sweeper 0.3 → 0.3.1
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.
- data.tar.gz.sig +0 -0
- data/CHANGELOG +2 -0
- data/Manifest +1 -0
- data/ext/nmake.bat +0 -0
- data/lib/sweeper.rb +18 -8
- data/sweeper.gemspec +3 -3
- data/test/integration/sweeper_test.rb +1 -1
- metadata +2 -1
- metadata.gz.sig +0 -0
data.tar.gz.sig
CHANGED
Binary file
|
data/CHANGELOG
CHANGED
data/Manifest
CHANGED
data/ext/nmake.bat
ADDED
File without changes
|
data/lib/sweeper.rb
CHANGED
@@ -7,7 +7,7 @@ require 'open-uri'
|
|
7
7
|
require 'uri'
|
8
8
|
require 'Text'
|
9
9
|
|
10
|
-
require 'ruby-debug' if ENV['DEBUG']
|
10
|
+
begin; require 'ruby-debug' if ENV['DEBUG']; rescue LoadError; end
|
11
11
|
|
12
12
|
class ID3Lib::Tag
|
13
13
|
def url
|
@@ -36,7 +36,15 @@ class Sweeper
|
|
36
36
|
|
37
37
|
# Instantiate a new Sweeper. See <tt>bin/sweeper</tt> for <tt>options</tt> details.
|
38
38
|
def initialize(options = {})
|
39
|
-
@dir = File.expand_path(options['dir'] || Dir.pwd)
|
39
|
+
@dir = File.expand_path(options['dir'] || Dir.pwd)
|
40
|
+
|
41
|
+
if RUBY_PLATFORM =~ /win32/
|
42
|
+
@dir = @dir[2..-1] # Strip drive letter
|
43
|
+
@null = "nul"
|
44
|
+
else
|
45
|
+
@null = "/dev/null"
|
46
|
+
end
|
47
|
+
|
40
48
|
@options = options
|
41
49
|
@errf = Tempfile.new("stderr")
|
42
50
|
@match_cache = {}
|
@@ -51,7 +59,6 @@ class Sweeper
|
|
51
59
|
Kernel.at_exit do
|
52
60
|
if @read == 0
|
53
61
|
puts "No mp3 files found. Maybe you meant --recursive?"
|
54
|
-
exec "#{$0} --help"
|
55
62
|
else
|
56
63
|
puts "Read: #{@read}\nUpdated: #{@updated}\nFailed: #{@failed}"
|
57
64
|
end
|
@@ -71,7 +78,8 @@ class Sweeper
|
|
71
78
|
def recurse(dir)
|
72
79
|
# Hackishly avoid problems with metacharacters in the Dir[] string.
|
73
80
|
dir = dir.gsub(/[^\s\w\.\/\\\-]/, '?')
|
74
|
-
|
81
|
+
p dir if ENV['DEBUG']
|
82
|
+
|
75
83
|
Dir["#{dir}/*"].each do |filename|
|
76
84
|
if File.directory? filename and options['recursive']
|
77
85
|
recurse(filename)
|
@@ -153,7 +161,9 @@ class Sweeper
|
|
153
161
|
# Lookup the basic metadata for an mp3 file. Accepts a pathname. Returns a tag hash.
|
154
162
|
def lookup_basic(filename)
|
155
163
|
Dir.chdir File.dirname(binary) do
|
156
|
-
|
164
|
+
cmd = "#{binary} #{filename.inspect} 2> #{@null}"
|
165
|
+
p cmd if ENV['DEBUG']
|
166
|
+
response = `#{cmd}`
|
157
167
|
object = begin
|
158
168
|
XSD::Mapping.xml2obj(response)
|
159
169
|
rescue Object => e
|
@@ -237,12 +247,12 @@ class Sweeper
|
|
237
247
|
|
238
248
|
# Returns the path to the fingerprinter binary for this platform.
|
239
249
|
def binary
|
240
|
-
@binary ||= "#{File.dirname(__FILE__)}/../vendor/" +
|
250
|
+
@binary ||= "#{File.expand_path(File.dirname(__FILE__))}/../vendor/" +
|
241
251
|
case RUBY_PLATFORM
|
242
|
-
when /darwin/
|
243
|
-
"lastfm.fpclient.beta2.OSX-intel/lastfmfpclient"
|
244
252
|
when /win32/
|
245
253
|
"lastfm.fpclient.beta2.win32/lastfmfpclient.exe"
|
254
|
+
when /darwin/
|
255
|
+
"lastfm.fpclient.beta2.OSX-intel/lastfmfpclient"
|
246
256
|
else
|
247
257
|
"lastfm.fpclient.beta2.linux-32/lastfmfpclient"
|
248
258
|
end
|
data/sweeper.gemspec
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
|
2
|
-
# Gem::Specification for Sweeper-0.3
|
2
|
+
# Gem::Specification for Sweeper-0.3.1
|
3
3
|
# Originally generated by Echoe
|
4
4
|
|
5
5
|
Gem::Specification.new do |s|
|
6
6
|
s.name = %q{sweeper}
|
7
|
-
s.version = "0.3"
|
7
|
+
s.version = "0.3.1"
|
8
8
|
|
9
9
|
s.specification_version = 2 if s.respond_to? :specification_version=
|
10
10
|
|
@@ -17,7 +17,7 @@ Gem::Specification.new do |s|
|
|
17
17
|
s.executables = ["sweeper"]
|
18
18
|
s.extensions = ["ext/extconf.rb"]
|
19
19
|
s.extra_rdoc_files = ["CHANGELOG", "lib/sweeper.rb", "LICENSE", "README", "TODO"]
|
20
|
-
s.files = ["bin/sweeper", "CHANGELOG", "ext/extconf.rb", "ext/Makefile", "lib/sweeper.rb", "LICENSE", "Manifest", "README", "test/integration/sweeper_test.rb", "TODO", "vendor/lastfm.fpclient.beta2.linux-32/lastfmfpclient", "vendor/lastfm.fpclient.beta2.linux-32/readme.txt", "vendor/lastfm.fpclient.beta2.OSX-intel/lastfmfpclient", "vendor/lastfm.fpclient.beta2.OSX-intel/libcurl.dylib", "vendor/lastfm.fpclient.beta2.OSX-intel/libmad.dylib", "vendor/lastfm.fpclient.beta2.OSX-intel/libsamplerate.dylib", "vendor/lastfm.fpclient.beta2.OSX-intel/libtag.dylib", "vendor/lastfm.fpclient.beta2.OSX-intel/readme.txt", "vendor/lastfm.fpclient.beta2.win32/lastfmfpclient.exe", "vendor/lastfm.fpclient.beta2.win32/libcurl.dll", "vendor/lastfm.fpclient.beta2.win32/libfftw3f-3.dll", "vendor/lastfm.fpclient.beta2.win32/Microsoft.VC80.CRT.manifest", "vendor/lastfm.fpclient.beta2.win32/msvcm80.dll", "vendor/lastfm.fpclient.beta2.win32/msvcp80.dll", "vendor/lastfm.fpclient.beta2.win32/msvcr80.dll", "vendor/lastfm.fpclient.beta2.win32/taglib.dll", "vendor/lastfm.fpclient.beta2.win32/zlib1.dll", "sweeper.gemspec"]
|
20
|
+
s.files = ["bin/sweeper", "CHANGELOG", "ext/extconf.rb", "ext/Makefile", "ext/nmake.bat", "lib/sweeper.rb", "LICENSE", "Manifest", "README", "test/integration/sweeper_test.rb", "TODO", "vendor/lastfm.fpclient.beta2.linux-32/lastfmfpclient", "vendor/lastfm.fpclient.beta2.linux-32/readme.txt", "vendor/lastfm.fpclient.beta2.OSX-intel/lastfmfpclient", "vendor/lastfm.fpclient.beta2.OSX-intel/libcurl.dylib", "vendor/lastfm.fpclient.beta2.OSX-intel/libmad.dylib", "vendor/lastfm.fpclient.beta2.OSX-intel/libsamplerate.dylib", "vendor/lastfm.fpclient.beta2.OSX-intel/libtag.dylib", "vendor/lastfm.fpclient.beta2.OSX-intel/readme.txt", "vendor/lastfm.fpclient.beta2.win32/lastfmfpclient.exe", "vendor/lastfm.fpclient.beta2.win32/libcurl.dll", "vendor/lastfm.fpclient.beta2.win32/libfftw3f-3.dll", "vendor/lastfm.fpclient.beta2.win32/Microsoft.VC80.CRT.manifest", "vendor/lastfm.fpclient.beta2.win32/msvcm80.dll", "vendor/lastfm.fpclient.beta2.win32/msvcp80.dll", "vendor/lastfm.fpclient.beta2.win32/msvcr80.dll", "vendor/lastfm.fpclient.beta2.win32/taglib.dll", "vendor/lastfm.fpclient.beta2.win32/zlib1.dll", "sweeper.gemspec"]
|
21
21
|
s.has_rdoc = true
|
22
22
|
s.homepage = %q{http://blog.evanweaver.com/files/doc/fauna/sweeper/}
|
23
23
|
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Sweeper", "--main", "README"]
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sweeper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Evan Weaver
|
@@ -86,6 +86,7 @@ files:
|
|
86
86
|
- CHANGELOG
|
87
87
|
- ext/extconf.rb
|
88
88
|
- ext/Makefile
|
89
|
+
- ext/nmake.bat
|
89
90
|
- lib/sweeper.rb
|
90
91
|
- LICENSE
|
91
92
|
- Manifest
|
metadata.gz.sig
CHANGED
Binary file
|