maid 0.4.0.beta.1 → 0.4.0.beta.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.
@@ -1 +1 @@
1
- 2.0.0p247
1
+ 2.0.0-p247
data/ChangeLog CHANGED
@@ -1,20 +1,25 @@
1
1
  maid (0.4.0) unstable; urgency=low
2
2
 
3
- * (Work in progress)
3
+ * New utility methods: "checksum_of", "escape_glob", "files"
4
+ * New duplicate detection methods: "dupes_in", "newest_dupes_in",
5
+ "verbose_dupes_in"
6
+ * New filetype methods: "media_type", "mime_type",
7
+ "spotlight_content_types", "where_content_type"
4
8
  * Ended official support for Ruby 1.8.7 and 1.9.2 (Closes: #108)
5
9
  * Update to rubyzip 1.0.0 (Closes: #109)
10
+ * Remove "ohai" dependency which required native extensions (Closes: #112)
6
11
  * Updated other dependencies (Closes: #111)
7
- * Mu Ye: Require option to cause real cleaning to take place (Closes: #78)
8
- * Graham Siener: Add UTF-8 support for zipfile_contents tool (Closes: #35)
12
+ * Mu Ye: Require "--force" option to cause real cleaning to take place (Closes: #78)
13
+ * Graham Siener: Add UTF-8 support for "zipfile_contents" tool (Closes: #35)
9
14
  * Justin Hileman: Add ability to list duplicate files (Closes: #15)
10
15
  * Mikael Hultgren: Rotate log file
11
16
  * John Colvin: Add filetype detection and filtering (Closes: #51)
12
17
  * Mu Ye: Improve command line spec coverage (Closes: #97)
18
+ * Bradley Smith: Add "locate" support on Ubuntu (Closes: #67)
19
+ * Vladimir Agafonkin: Add "escape_glob" method for escaping brackets in paths
20
+ that will be passed to "dir" (Closes: #104)
13
21
  * Changed from ArgumentError to NotImplementedError when a command is
14
22
  unsupported on the host OS.
15
- * Bradley Smith: Add locate support on Ubuntu (Closes: #67)
16
- * Vladimir Agafonkin: Add escape_glob method for escaping brackets in paths
17
- that will be passed to dir (Closes: #104)
18
23
 
19
24
  -- Benjamin Oakes <hello@benjaminoakes.com> TODO
20
25
 
data/README.md CHANGED
@@ -39,7 +39,7 @@ This project wouldn't be where it is today without its users and contributors.
39
39
  ### For Users
40
40
 
41
41
  [
42
- [Flattr this git repo](http://api.flattr.com/button/flattr-badge-large.png)
42
+ ![Flattr this git repo](https://api.flattr.com/button/flattr-badge-large.png)
43
43
  ](https://flattr.com/submit/auto?user_id=benjaminoakes&url=https://github.com/benjaminoakes/maid&title=maid&language=en_GB&tags=github&category=software)
44
44
 
45
45
  * Participate in [beta testing](https://github.com/benjaminoakes/maid/issues/10)
@@ -76,7 +76,7 @@ This project wouldn't be where it is today without its users and contributors.
76
76
 
77
77
  ## Installation
78
78
 
79
- Maid is a gem, so just `gem install maid` like normal. Please see below for details.
79
+ Maid is a gem, so just `gem install maid` like normal. If you're unfamiliar with Ruby, please see below for details.
80
80
 
81
81
  #### Requirements
82
82
 
@@ -85,38 +85,42 @@ Modern Ruby versions and Unix-like operating systems should work, but only OS X
85
85
  Offically supported:
86
86
 
87
87
  * **OS:** Mac OS X, Ubuntu
88
- * **Ruby:** 1.9.3+ (2.0.0 preferred)
88
+ * **Ruby:** 1.9.3+ (2.0.0 preferred)
89
89
 
90
90
  Some features require OS X. See the [documentation][] for more details.
91
91
 
92
92
  ### Manual Installation
93
93
 
94
- First, you need Ruby:
94
+ First, you need Ruby.
95
+
96
+ Consider `rbenv` or `rvm`, especially if only Ruby 1.8.7 is available (e.g. if you are using an older version of OS X).
97
+
98
+ System Ruby works fine too, though:
95
99
 
96
100
  * **Mac OS X:** Ruby 2.0.0 comes preinstalled in OS X 10.9.
97
101
  * **Ubuntu:** Ruby is not preinstalled. To install Ruby 1.9.3: `sudo apt-get install ruby1.9.1` (sic)
98
102
  ([Interested in a package?](https://github.com/benjaminoakes/maid/issues/3))
99
103
 
100
- Consider `rbenv` or `rvm` if only Ruby 1.8.7 is available (e.g. if you are using an older version of OS X).
101
-
102
104
  Then, you can install via RubyGems. Open a terminal and run:
103
105
 
104
- sudo gem install maid
106
+ gem install maid
107
+
108
+ (Use `sudo` if using system Ruby.)
105
109
 
106
110
  At a later date, you can update by running:
107
111
 
108
- sudo gem update maid
112
+ gem update maid
109
113
 
110
114
  If you decide you don't want Maid installed anymore, remove it:
111
115
 
112
- sudo gem uninstall maid
116
+ gem uninstall maid
113
117
 
114
118
  **NOTE:** This does not remove any files under `~/.maid` or crontab entries. Please remove them at your convenience.
115
119
 
116
120
  ## Tutorial
117
121
 
118
122
  In a nutshell, Maid uses "rules" to define how files are handled. Once you have rules defined, you can either test what
119
- cleaning would do (`maid clean -n`) or actually clean (`maid clean`).
123
+ cleaning would do (`maid clean -n`) or actually clean (`maid clean -f`).
120
124
 
121
125
  To generate a [sample rules file](https://github.com/benjaminoakes/maid/blob/master/lib/maid/rules.sample.rb), run:
122
126
 
@@ -162,8 +166,8 @@ maid clean --dry-run # Synonyms: -n, --noop
162
166
  To run your rules on demand, you can run `maid` manually:
163
167
 
164
168
  ```bash
165
- maid clean # Run the rules at ~/.maid/rules.rb, logging to ~/.maid/maid.log
166
- maid clean -r some_rules.rb # Run the rules in the file 'some_rules.rb', logging to ~/.maid/maid.log
169
+ maid clean -f # Run the rules at ~/.maid/rules.rb, logging to ~/.maid/maid.log
170
+ maid clean -fr some_rules.rb # Run the rules in the file 'some_rules.rb', logging to ~/.maid/maid.log
167
171
  ```
168
172
 
169
173
  So, for example, if this is `some_rules.rb`:
@@ -198,13 +202,13 @@ To do this, edit your crontab in your tool of choice:
198
202
 
199
203
  crontab -e
200
204
 
201
- ...and have it invoke the `maid clean` command. The `--silent` option is provided to keep this from emailing you, if
205
+ ...and have it invoke the `maid clean -f` command. The `--silent` option is provided to keep this from emailing you, if
202
206
  desired. A log of the actions taken is kept at `~/.maid/maid.log`.
203
207
 
204
208
  Example for every day at 1am:
205
209
 
206
210
  # minute hour day_of_month month day_of_week command_to_execute
207
- 0 1 * * * /bin/bash -li -c "maid clean --silent"
211
+ 0 1 * * * /bin/bash -li -c "maid clean --force --silent"
208
212
 
209
213
  ## Warranty
210
214
 
@@ -314,9 +314,13 @@ module Maid::Tools
314
314
 
315
315
  # Find all duplicate files in the given globs.
316
316
  #
317
- # Globs are expanded as in #dir, then all non-files are filtered out. The remaining
318
- # files are compared by size, and non-dupes are filtered out. The remaining candidates
319
- # are then compared by checksum. Dupes are returned as an array of arrays.
317
+ # More often than not, you'll want to use `newest_dupes_in` or
318
+ # `verbose_dupes_in` instead of using this method directly.
319
+ #
320
+ # Globs are expanded as in `dir`, then all non-files are filtered out. The
321
+ # remaining files are compared by size, and non-dupes are filtered out. The
322
+ # remaining candidates are then compared by checksum. Dupes are returned as
323
+ # an array of arrays.
320
324
  #
321
325
  # ## Examples
322
326
  #
@@ -325,16 +329,10 @@ module Maid::Tools
325
329
  # ['~/Desktop/bar.txt', '~/Desktop/bar copy.txt']
326
330
  # ]
327
331
  #
328
- # Keep the dupe with the shortest name (ideal for `foo (1).zip` and `foo copy.zip` style dupes):
329
- #
330
- # dupes_in('~/Downloads/*').each do |dupes|
331
- # trash dupes.sort_by { |p| File.basename(p).length }[1..-1]
332
- # end
333
- #
334
- # Keep the oldest dupe:
332
+ # Keep the newest dupe:
335
333
  #
336
334
  # dupes_in('~/Desktop/*', '~/Downloads/*').each do |dupes|
337
- # trash dupes.sort_by { |p| File.mtime(p) }[1..-1]
335
+ # trash dupes.sort_by { |p| File.mtime(p) }[0..-2]
338
336
  # end
339
337
  #
340
338
  def dupes_in(globs)
@@ -344,13 +342,43 @@ module Maid::Tools
344
342
  reject { |s, p| p.length < 2 }. # ... and filter out any non-dupes
345
343
  map do |size, candidates|
346
344
  dupes += candidates.
347
- group_by { |p| checksum_of(p) }. # Now group our candidates by a slower checksum calculation
345
+ group_by { |p| checksum_of(p) }. # Now group our candidates by a slower checksum calculation
348
346
  reject { |c, p| p.length < 2 }. # ... and filter out any non-dupes
349
347
  values
350
348
  end
351
349
  dupes
352
350
  end
353
351
 
352
+ # Convenience method that is like `dupes_in` but excludes the oldest dupe.
353
+ #
354
+ # ## Example
355
+ #
356
+ # Keep the oldest dupe (trash the others):
357
+ #
358
+ # trash newest_dupes_in('~/Downloads/*')
359
+ #
360
+ def newest_dupes_in(globs)
361
+ dupes_in(globs).
362
+ map { |dupes| dupes.sort_by { |p| File.mtime(p) }[1..-1] }.
363
+ flatten
364
+ end
365
+
366
+ # Convenience method for `dupes_in` that excludes the dupe with the shortest name.
367
+ #
368
+ # This is ideal for dupes like `foo.zip`, `foo (1).zip`, `foo copy.zip`.
369
+ #
370
+ # ## Example
371
+ #
372
+ # Keep the dupe with the shortest name (trash the others):
373
+ #
374
+ # trash verbose_dupes_in('~/Downloads/*')
375
+ #
376
+ def verbose_dupes_in(globs)
377
+ dupes_in(globs).
378
+ map { |dupes| dupes.sort_by { |p| File.basename(p).length }[1..-1] }.
379
+ flatten
380
+ end
381
+
354
382
  # [Mac OS X] Use Spotlight metadata to determine audio length.
355
383
  #
356
384
  # ## Examples
@@ -1,5 +1,3 @@
1
- require 'ohai'
2
-
3
1
  # Version information for the host system, kind of like a browser's user agent string.
4
2
  #
5
3
  # This could potentially be a part of `Platform` or `VERSION` but both of those are used when building the gemspec,
@@ -8,14 +6,9 @@ module Maid::UserAgent
8
6
  class << self
9
7
  # This used to be called `#to_s`, but that made things difficult when testing.
10
8
  def value
11
- ohai = Ohai::System.new
12
- ohai.all_plugins
13
-
14
- maid = "Maid/#{ ::Maid.const_get(:VERSION) }"
15
- platform = "#{ ohai['platform'] }/#{ ohai['platform_version'] }"
16
- ruby = "Ruby/#{ RUBY_VERSION } #{ RUBY_PLATFORM }"
9
+ maid = "Maid/#{ ::Maid.const_get(:VERSION) }"
17
10
 
18
- "#{ maid } (#{ platform }; #{ ruby })"
11
+ "#{ maid } (#{ RUBY_DESCRIPTION })"
19
12
  end
20
13
  end
21
14
  end
@@ -1,3 +1,3 @@
1
1
  module Maid
2
- VERSION = '0.4.0.beta.1'
2
+ VERSION = '0.4.0.beta.2'
3
3
  end
@@ -22,7 +22,6 @@ Gem::Specification.new do |s|
22
22
  s.add_dependency('thor', '>= 0.14.0', '< 0.19.0')
23
23
  s.add_dependency('deprecated', '~> 3.0.0')
24
24
  s.add_dependency('mime-types', '~> 1.21') # TODO: loosen version restrictions based on testing
25
- s.add_dependency('ohai', '>= 6.14.0', '~> 6.18.0')
26
25
  s.add_dependency('rubyzip', '~> 1.0.0')
27
26
  s.add_dependency('xdg', '~> 2.2.3') # previous versions had bugs
28
27
  # TODO: use one of these two gems instead of `mdfind`. **But** They have to work on Linux as well.
@@ -1,6 +1,5 @@
1
1
  require 'logger'
2
2
  require 'mime/types'
3
- require 'ohai'
4
3
  require 'rbconfig'
5
4
  require 'stringio'
6
5
  require 'xdg'
@@ -38,20 +37,6 @@ describe 'Dependency expectations' do
38
37
  end
39
38
  end
40
39
 
41
- describe Ohai do
42
- before do
43
- @ohai = Ohai::System.new
44
- # FIXME: For some reason this is really slow when using `guard`
45
- @ohai.require_plugin('os')
46
- end
47
-
48
- it 'has platform information' do
49
- @ohai.require_plugin('platform')
50
- @ohai['platform'].should match(/[a-z]+/i)
51
- @ohai['platform_version'].should match(/[0-9]+/)
52
- end
53
- end
54
-
55
40
  describe RbConfig do
56
41
  it 'identifies the host operating system' do
57
42
  RbConfig::CONFIG['host_os'].should match(/[a-z]+/)
Binary file
@@ -532,11 +532,32 @@ module Maid
532
532
  dupes = @maid.dupes_in(file_fixtures_glob)
533
533
  dupes.first.should be_kind_of(Array)
534
534
 
535
+ basenames = dupes.flatten.map { |p| File.basename(p) }
536
+ basenames.should == %w(1.zip bar.zip foo.zip)
537
+ end
538
+ end
539
+
540
+ describe '#verbose_dupes_in' do
541
+ it 'should list all but the shortest-named dupe' do
542
+ dupes = @maid.verbose_dupes_in(file_fixtures_glob)
543
+
535
544
  basenames = dupes.flatten.map { |p| File.basename(p) }
536
545
  basenames.should == %w(bar.zip foo.zip)
537
546
  end
538
547
  end
539
548
 
549
+ describe '#newest_dupes_in' do
550
+ it 'should list all but the shortest-named dupe' do
551
+ oldest_path = "#{file_fixtures_path}/foo.zip"
552
+ FileUtils.touch(oldest_path, :mtime => Time.new(1970, 1, 1))
553
+
554
+ dupes = @maid.newest_dupes_in(file_fixtures_glob)
555
+
556
+ basenames = dupes.flatten.map { |p| File.basename(p) }
557
+ basenames.should == %w(bar.zip 1.zip)
558
+ end
559
+ end
560
+
540
561
  describe '#mime_type' do
541
562
  context 'given a JPEG image' do
542
563
  it 'reports "image/jpeg"' do
@@ -4,19 +4,10 @@ module Maid
4
4
  describe UserAgent do
5
5
  describe 'the user agent string' do
6
6
  it 'is formatted with the Maid version, platform version, and Ruby version' do
7
- system = {
8
- 'platform' => 'Unix',
9
- 'platform_version' => '1.0',
10
- }
11
-
12
- system.stub(:all_plugins)
13
-
14
- Ohai::System.stub(:new) { system }
15
- stub_const('RUBY_VERSION', '1.8.8')
16
- stub_const('RUBY_PLATFORM', 'pdp7')
7
+ stub_const('RUBY_DESCRIPTION', 'ruby 1.8.8p0 (1970-01-01 revision 1) [pdp7-unix]')
17
8
  ::Maid.stub(:const_get).with(:VERSION) { '0.0.1' }
18
9
 
19
- UserAgent.value.should == 'Maid/0.0.1 (Unix/1.0; Ruby/1.8.8 pdp7)'
10
+ UserAgent.value.should == 'Maid/0.0.1 (ruby 1.8.8p0 (1970-01-01 revision 1) [pdp7-unix])'
20
11
  end
21
12
  end
22
13
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0.beta.1
4
+ version: 0.4.0.beta.2
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-10-25 00:00:00.000000000 Z
12
+ date: 2013-10-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: escape
16
- requirement: &15074480 !ruby/object:Gem::Requirement
16
+ requirement: &16846920 !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: *15074480
27
+ version_requirements: *16846920
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: thor
30
- requirement: &15072960 !ruby/object:Gem::Requirement
30
+ requirement: &16846100 !ruby/object:Gem::Requirement
31
31
  none: false
32
32
  requirements:
33
33
  - - ! '>='
@@ -38,10 +38,10 @@ dependencies:
38
38
  version: 0.19.0
39
39
  type: :runtime
40
40
  prerelease: false
41
- version_requirements: *15072960
41
+ version_requirements: *16846100
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: deprecated
44
- requirement: &15071660 !ruby/object:Gem::Requirement
44
+ requirement: &16845180 !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: *15071660
52
+ version_requirements: *16845180
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: mime-types
55
- requirement: &15071040 !ruby/object:Gem::Requirement
55
+ requirement: &16844620 !ruby/object:Gem::Requirement
56
56
  none: false
57
57
  requirements:
58
58
  - - ~>
@@ -60,24 +60,10 @@ dependencies:
60
60
  version: '1.21'
61
61
  type: :runtime
62
62
  prerelease: false
63
- version_requirements: *15071040
64
- - !ruby/object:Gem::Dependency
65
- name: ohai
66
- requirement: &15070520 !ruby/object:Gem::Requirement
67
- none: false
68
- requirements:
69
- - - ! '>='
70
- - !ruby/object:Gem::Version
71
- version: 6.14.0
72
- - - ~>
73
- - !ruby/object:Gem::Version
74
- version: 6.18.0
75
- type: :runtime
76
- prerelease: false
77
- version_requirements: *15070520
63
+ version_requirements: *16844620
78
64
  - !ruby/object:Gem::Dependency
79
65
  name: rubyzip
80
- requirement: &15069740 !ruby/object:Gem::Requirement
66
+ requirement: &16843740 !ruby/object:Gem::Requirement
81
67
  none: false
82
68
  requirements:
83
69
  - - ~>
@@ -85,10 +71,10 @@ dependencies:
85
71
  version: 1.0.0
86
72
  type: :runtime
87
73
  prerelease: false
88
- version_requirements: *15069740
74
+ version_requirements: *16843740
89
75
  - !ruby/object:Gem::Dependency
90
76
  name: xdg
91
- requirement: &15069280 !ruby/object:Gem::Requirement
77
+ requirement: &16842960 !ruby/object:Gem::Requirement
92
78
  none: false
93
79
  requirements:
94
80
  - - ~>
@@ -96,10 +82,10 @@ dependencies:
96
82
  version: 2.2.3
97
83
  type: :runtime
98
84
  prerelease: false
99
- version_requirements: *15069280
85
+ version_requirements: *16842960
100
86
  - !ruby/object:Gem::Dependency
101
87
  name: fakefs
102
- requirement: &15068800 !ruby/object:Gem::Requirement
88
+ requirement: &16841920 !ruby/object:Gem::Requirement
103
89
  none: false
104
90
  requirements:
105
91
  - - ~>
@@ -107,10 +93,10 @@ dependencies:
107
93
  version: 0.4.2
108
94
  type: :development
109
95
  prerelease: false
110
- version_requirements: *15068800
96
+ version_requirements: *16841920
111
97
  - !ruby/object:Gem::Dependency
112
98
  name: guard
113
- requirement: &15068340 !ruby/object:Gem::Requirement
99
+ requirement: &16841040 !ruby/object:Gem::Requirement
114
100
  none: false
115
101
  requirements:
116
102
  - - ~>
@@ -118,10 +104,10 @@ dependencies:
118
104
  version: 2.2.2
119
105
  type: :development
120
106
  prerelease: false
121
- version_requirements: *15068340
107
+ version_requirements: *16841040
122
108
  - !ruby/object:Gem::Dependency
123
109
  name: guard-rspec
124
- requirement: &15067880 !ruby/object:Gem::Requirement
110
+ requirement: &16839820 !ruby/object:Gem::Requirement
125
111
  none: false
126
112
  requirements:
127
113
  - - ~>
@@ -129,10 +115,10 @@ dependencies:
129
115
  version: 4.0.3
130
116
  type: :development
131
117
  prerelease: false
132
- version_requirements: *15067880
118
+ version_requirements: *16839820
133
119
  - !ruby/object:Gem::Dependency
134
120
  name: rake
135
- requirement: &15083620 !ruby/object:Gem::Requirement
121
+ requirement: &16836680 !ruby/object:Gem::Requirement
136
122
  none: false
137
123
  requirements:
138
124
  - - ~>
@@ -140,10 +126,10 @@ dependencies:
140
126
  version: 10.1.0
141
127
  type: :development
142
128
  prerelease: false
143
- version_requirements: *15083620
129
+ version_requirements: *16836680
144
130
  - !ruby/object:Gem::Dependency
145
131
  name: redcarpet
146
- requirement: &15082820 !ruby/object:Gem::Requirement
132
+ requirement: &16835760 !ruby/object:Gem::Requirement
147
133
  none: false
148
134
  requirements:
149
135
  - - ~>
@@ -151,10 +137,10 @@ dependencies:
151
137
  version: 3.0.0
152
138
  type: :development
153
139
  prerelease: false
154
- version_requirements: *15082820
140
+ version_requirements: *16835760
155
141
  - !ruby/object:Gem::Dependency
156
142
  name: rspec
157
- requirement: &15081680 !ruby/object:Gem::Requirement
143
+ requirement: &16835060 !ruby/object:Gem::Requirement
158
144
  none: false
159
145
  requirements:
160
146
  - - ~>
@@ -162,10 +148,10 @@ dependencies:
162
148
  version: 2.14.1
163
149
  type: :development
164
150
  prerelease: false
165
- version_requirements: *15081680
151
+ version_requirements: *16835060
166
152
  - !ruby/object:Gem::Dependency
167
153
  name: timecop
168
- requirement: &15079900 !ruby/object:Gem::Requirement
154
+ requirement: &16834140 !ruby/object:Gem::Requirement
169
155
  none: false
170
156
  requirements:
171
157
  - - ~>
@@ -173,10 +159,10 @@ dependencies:
173
159
  version: 0.6.3
174
160
  type: :development
175
161
  prerelease: false
176
- version_requirements: *15079900
162
+ version_requirements: *16834140
177
163
  - !ruby/object:Gem::Dependency
178
164
  name: yard
179
- requirement: &15079120 !ruby/object:Gem::Requirement
165
+ requirement: &16833200 !ruby/object:Gem::Requirement
180
166
  none: false
181
167
  requirements:
182
168
  - - ~>
@@ -184,10 +170,10 @@ dependencies:
184
170
  version: 0.8.4
185
171
  type: :development
186
172
  prerelease: false
187
- version_requirements: *15079120
173
+ version_requirements: *16833200
188
174
  - !ruby/object:Gem::Dependency
189
175
  name: rb-inotify
190
- requirement: &15077800 !ruby/object:Gem::Requirement
176
+ requirement: &16831180 !ruby/object:Gem::Requirement
191
177
  none: false
192
178
  requirements:
193
179
  - - ~>
@@ -195,10 +181,10 @@ dependencies:
195
181
  version: 0.9.0
196
182
  type: :development
197
183
  prerelease: false
198
- version_requirements: *15077800
184
+ version_requirements: *16831180
199
185
  - !ruby/object:Gem::Dependency
200
186
  name: rb-fsevent
201
- requirement: &15076800 !ruby/object:Gem::Requirement
187
+ requirement: &16828880 !ruby/object:Gem::Requirement
202
188
  none: false
203
189
  requirements:
204
190
  - - ~>
@@ -206,7 +192,7 @@ dependencies:
206
192
  version: 0.9.2
207
193
  type: :development
208
194
  prerelease: false
209
- version_requirements: *15076800
195
+ version_requirements: *16828880
210
196
  description: Be lazy. Let Maid clean up after you, based on rules you define. Think
211
197
  of it as "Hazel for hackers".
212
198
  email:
@@ -253,10 +239,11 @@ files:
253
239
  - script/vagrant-test
254
240
  - script/vagrant-test-all
255
241
  - spec/dependency_spec.rb
242
+ - spec/fixtures/files/1.zip
256
243
  - spec/fixtures/files/bar.zip
257
244
  - spec/fixtures/files/foo.zip
258
245
  - spec/fixtures/files/ruby.jpg
259
- - spec/fixtures/files/さ.zip
246
+ - ! "spec/fixtures/files/ã\x81\x95.zip"
260
247
  - spec/lib/maid/app_spec.rb
261
248
  - spec/lib/maid/maid_spec.rb
262
249
  - spec/lib/maid/numeric_extensions_spec.rb