kanye 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (7) hide show
  1. data/Gemfile +1 -2
  2. data/README.rdoc +7 -7
  3. data/Rakefile +2 -3
  4. data/VERSION +1 -1
  5. data/bin/kanye +49 -4
  6. data/kanye.gemspec +91 -0
  7. metadata +31 -56
data/Gemfile CHANGED
@@ -1,9 +1,8 @@
1
1
  source "http://rubygems.org"
2
2
  gem 'httparty', ">= 0.7.4"
3
3
  gem 'sqlite3'
4
- gem 'character-encodings'
5
4
  gem 'nokogiri'
6
- gem 'ruby-mp3info'
5
+ gem 'ruby-mp3info', '0.6.14'
7
6
 
8
7
  group :development do
9
8
  gem "rspec", ">= 2"
@@ -1,18 +1,18 @@
1
- = HypeR
1
+ = Kanye
2
2
 
3
3
  A utility that helps you download all of your favorite tracks from your favorite music blog aggregator.
4
4
 
5
5
  == Installation
6
6
 
7
- gem install hyper
7
+ gem install kanye
8
8
 
9
9
  You'll need to have XCode installed because *Nokogiri* is a dependency.
10
- The first time you run +hyper+, it will ask you for your user name.
10
+ The first time you run +kanye+, it will ask you for your user name.
11
11
 
12
- $ hyper
13
- It appears HypeR hasn't been configured yet.
12
+ $ kanye
13
+ It appears Kanye hasn't been configured yet.
14
14
  What is your hype user name?
15
15
 
16
- This will output to +~/.hyper_rc+ some YAML options. Your downloads will now begin.
16
+ This will output to +~/.kanye_rc+ some YAML options. Your downloads will now begin.
17
17
 
18
- Now that you've configured it, just run +hyper+ any time to go over your latest favorites.
18
+ Now that you've configured it, just run +kanye+ any time to go over your latest favorites.
data/Rakefile CHANGED
@@ -16,16 +16,15 @@ Jeweler::Tasks.new do |gem|
16
16
  gem.homepage = "http://github.com/samvincent/kanye"
17
17
  gem.license = "MIT"
18
18
  gem.summary = %Q{Ruby HypeM utility}
19
- gem.description = %Q{Ruby HypeM utility}
19
+ gem.description = %Q{Lyrical genius, voice of a generation.}
20
20
  gem.email = "sam.vincent@mac.com"
21
21
  gem.authors = ["Sam Vincent"]
22
22
  # Include your dependencies below. Runtime dependencies are required when using your gem,
23
23
  # and development dependencies are only needed for development (ie running rake tasks, tests, etc)
24
24
  gem.add_runtime_dependency 'httparty', '>= 0.7.4'
25
25
  gem.add_runtime_dependency 'sqlite3'
26
- gem.add_runtime_dependency 'character-encodings'
27
26
  gem.add_runtime_dependency 'nokogiri', '> 1.4.0'
28
- gem.add_runtime_dependency 'ruby-mp3info', '> 0.6.0'
27
+ gem.add_runtime_dependency 'ruby-mp3info', '0.6.14'
29
28
  # gem.add_development_dependency 'rspec', '> 1.2.3'
30
29
  end
31
30
  Jeweler::RubygemsDotOrgTasks.new
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.1.1
data/bin/kanye CHANGED
@@ -4,6 +4,49 @@ $:.unshift(File.join(File.dirname(__FILE__), "/../lib"))
4
4
  require 'rubygems'
5
5
  require 'kanye'
6
6
 
7
+ KANYE_GLASSES = <<-GLASSES
8
+
9
+ ..:ccCCO888@@@@@@@@@@@@@@@@@@@@@@88Coc:
10
+ :C8@@@@@@@@@@@@@@@@@@@@8Oc:. .coO8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O:
11
+ .o@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@o
12
+ .:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:
13
+ Oc:.o..... @@@@@@@@@@@@@@@@@ : .@@@@@@@
14
+ o .c .@@@@@@@@@@@@@@C .8@@@@@@
15
+ : .::::.........................@@@@@@@@@@@@@@.:::......:::ccc::::::cccooooccc:c::c:ccc::.......::.... c@@@@@@c
16
+ .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@88O@@
17
+ : : @@@@@@@@@@@@@@.:..:::::::ccocooooCCOOO8O8888@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@c
18
+ : . @@@@@@@@@@@@@@ c @@@@@8
19
+ oOOOCCCCooooooccccccccccccccccccccco@@@@@@@@@@@@@@:.ccc:....:.. .... :@@@@@@
20
+ .::::cccooooCOO88888@@@@@@@@@@@@@@@@@@@@@O8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@88OOOCCooccccc:....:... ..::...O@@@@@@@c :oCC.
21
+ :cccccccocc:::. @@@@o .@@@@@CocooCCO8888@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@COoCCoCCc
22
+ :cc:. ..:.:c:cc.:. . :@@@8CO 8@@@8c: ..:::ccooCCO8888@@@@@@@@@@@@@@@@@@@@@@@@@@@@OoCCCCOo.
23
+ .coC88@@@@@@@@@@@@@@@@@@@888OCoc8@@@ COc @@@@ :cc:.... C@@@@@@@@@@OoCoCCo.
24
+ . .. .:ccCOO88@@@@@@OOCOo 8@@@@@@@@@@@@@@@@@@@888OCoccc:.......:..::.... C@@@@@@@@@@OooCo
25
+ : co::. @@@@ OCOo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@888OCooc::.......::.:c..8@@@@@@@@@8Oo:
26
+ :C@@@@@8oc:. ....cc:c:.@@@.OCOO @@@@ cccc ..:ccoOOO8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:
27
+ . .:oO8@@@@@@@@@@@@8OCO@@8COOO. o@@@8 cc:. ..:cccoOO88@@@@@@@@@@@@.
28
+ . :.. .:c@@@ OOO o@@@@@@@@@@@@8OCoc:::.::.c::c... .@@@@@O .
29
+ :C8@@8c. ..:::. O@@COOC O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8OCoc::::.:::c:::... O@@@@@
30
+ : : :C8@@@@@8oc: o@@8.C @@@@@ cc ..:ccCO88@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8OOCcc:cO8@@c
31
+ . . .cO8@@@@@@@@@ 8 8@@@@ c ..ccoOO88@@@@@@@@@@@@@@@@@@@@@@@@@@@
32
+ :@@@@@o. .. @@@ O@@@@c:.. .:::cccoc::... 8OO8@
33
+ .@@@ o8@@@@Oo. .C@@@. O@@@@@@@@@@@@@@@@@@@@@@@8OOocc:. ...::cc.:... O@@@@.
34
+ @@@@: :. co@@@@@@@@@8 .@@@@ :.coO88@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8OOcc:.. .. ...:8@@@@O
35
+ .@@@@8c 8@@@@@@@c @@@@C c .::coO88@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
36
+ o@@@@@@@@@@O @@@@c ..::::.. ::coCO88@@@@@@@@.
37
+ c@@@@@@@@@@@@@@@@8OCcc:. ...::::.:. o@@@@@:
38
+ .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8OOocc:.....::o@@@@@@O
39
+ .@@@@@@@@@@8::. ::cCO88@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@c
40
+ .8@@@@@@@@@@@Oo::.:c:. c@@@@@@@@@@@@@@@C
41
+ :C@@@@@@@@@@@@@@@@@@@@88OOCoO@@@@@@@@@@@@@@@.
42
+ .o8@@@@@@@@@@@@@@@@@@@@@@@@@@@@8o
43
+ ..:::ccc::.
44
+
45
+
46
+ GLASSES
47
+
48
+ puts KANYE_GLASSES
49
+
7
50
  def load_configuration(path)
8
51
  YAML.load File.read(path)
9
52
  end
@@ -12,8 +55,8 @@ end
12
55
  if File.exist?(Kanye::DEFAULT_CONFIGURATION_PATH)
13
56
  config = load_configuration(Kanye::DEFAULT_CONFIGURATION_PATH)
14
57
  else
15
- puts "It appears Kanye hasn't been configured yet."
16
- puts "What is your hype user name?"
58
+ puts "It appears Kanye doesn't know who you are yet."
59
+ print "What is your hype name?"
17
60
  name = gets.chomp
18
61
  File.open(Kanye::DEFAULT_CONFIGURATION_PATH, "w") do |f|
19
62
  f.write "username: #{name}\n"
@@ -24,20 +67,22 @@ else
24
67
  config = load_configuration(Kanye::DEFAULT_CONFIGURATION_PATH)
25
68
  end
26
69
 
70
+ # Create the download directory if it doesn't exist yet
27
71
  unless File.directory? config["path"]
28
72
  Dir::mkdir config["path"]
29
73
  puts "Created directory => #{config["path"]}"
30
74
  end
31
75
 
76
+ # Create the Database if it doesn't exist yet
32
77
  unless File.exists? config["db"]
33
78
  db = SQLite3::Database.new(config["db"])
34
79
  db.execute("CREATE TABLE tracks (id INTEGER PRIMARY KEY AUTOINCREMENT, key TEXT);")
35
80
  puts "Created database => #{config["db"]}"
36
81
  end
37
82
 
38
- config["pages"].to_i.times do |i|
83
+ # Grab as many pages as configured
84
+ (1..(config["pages"])).each do |page|
39
85
  user = config["username"]
40
- page = i+1
41
86
  kanye = Kanye.new(user, page)
42
87
  kanye.download_all!
43
88
  end
@@ -0,0 +1,91 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{kanye}
8
+ s.version = "0.1.1"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Sam Vincent"]
12
+ s.date = %q{2011-06-17}
13
+ s.default_executable = %q{kanye}
14
+ s.description = %q{Lyrical genius, voice of a generation.}
15
+ s.email = %q{sam.vincent@mac.com}
16
+ s.executables = ["kanye"]
17
+ s.extra_rdoc_files = [
18
+ "LICENSE.txt",
19
+ "README.rdoc"
20
+ ]
21
+ s.files = [
22
+ ".document",
23
+ "Gemfile",
24
+ "LICENSE.txt",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "bin/kanye",
29
+ "kanye.gemspec",
30
+ "lib/kanye.rb",
31
+ "lib/kanye/history.rb",
32
+ "lib/kanye/track.rb",
33
+ "spec/data/sample.html",
34
+ "spec/kanye/track_spec.rb",
35
+ "spec/kanye_spec.rb",
36
+ "spec/spec_helper.rb"
37
+ ]
38
+ s.homepage = %q{http://github.com/samvincent/kanye}
39
+ s.licenses = ["MIT"]
40
+ s.require_paths = ["lib"]
41
+ s.rubygems_version = %q{1.6.2}
42
+ s.summary = %q{Ruby HypeM utility}
43
+ s.test_files = [
44
+ "spec/kanye/track_spec.rb",
45
+ "spec/kanye_spec.rb",
46
+ "spec/spec_helper.rb"
47
+ ]
48
+
49
+ if s.respond_to? :specification_version then
50
+ s.specification_version = 3
51
+
52
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
53
+ s.add_runtime_dependency(%q<httparty>, [">= 0.7.4"])
54
+ s.add_runtime_dependency(%q<sqlite3>, [">= 0"])
55
+ s.add_runtime_dependency(%q<nokogiri>, [">= 0"])
56
+ s.add_runtime_dependency(%q<ruby-mp3info>, ["= 0.6.14"])
57
+ s.add_development_dependency(%q<rspec>, [">= 2"])
58
+ s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
59
+ s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
60
+ s.add_runtime_dependency(%q<httparty>, [">= 0.7.4"])
61
+ s.add_runtime_dependency(%q<sqlite3>, [">= 0"])
62
+ s.add_runtime_dependency(%q<nokogiri>, ["> 1.4.0"])
63
+ s.add_runtime_dependency(%q<ruby-mp3info>, ["= 0.6.14"])
64
+ else
65
+ s.add_dependency(%q<httparty>, [">= 0.7.4"])
66
+ s.add_dependency(%q<sqlite3>, [">= 0"])
67
+ s.add_dependency(%q<nokogiri>, [">= 0"])
68
+ s.add_dependency(%q<ruby-mp3info>, ["= 0.6.14"])
69
+ s.add_dependency(%q<rspec>, [">= 2"])
70
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
71
+ s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
72
+ s.add_dependency(%q<httparty>, [">= 0.7.4"])
73
+ s.add_dependency(%q<sqlite3>, [">= 0"])
74
+ s.add_dependency(%q<nokogiri>, ["> 1.4.0"])
75
+ s.add_dependency(%q<ruby-mp3info>, ["= 0.6.14"])
76
+ end
77
+ else
78
+ s.add_dependency(%q<httparty>, [">= 0.7.4"])
79
+ s.add_dependency(%q<sqlite3>, [">= 0"])
80
+ s.add_dependency(%q<nokogiri>, [">= 0"])
81
+ s.add_dependency(%q<ruby-mp3info>, ["= 0.6.14"])
82
+ s.add_dependency(%q<rspec>, [">= 2"])
83
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
84
+ s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
85
+ s.add_dependency(%q<httparty>, [">= 0.7.4"])
86
+ s.add_dependency(%q<sqlite3>, [">= 0"])
87
+ s.add_dependency(%q<nokogiri>, ["> 1.4.0"])
88
+ s.add_dependency(%q<ruby-mp3info>, ["= 0.6.14"])
89
+ end
90
+ end
91
+
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kanye
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 25
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 0
10
- version: 0.1.0
9
+ - 1
10
+ version: 0.1.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Sam Vincent
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-05-24 00:00:00 -07:00
18
+ date: 2011-06-17 00:00:00 -07:00
19
19
  default_executable: kanye
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -49,7 +49,7 @@ dependencies:
49
49
  type: :runtime
50
50
  version_requirements: *id002
51
51
  - !ruby/object:Gem::Dependency
52
- name: character-encodings
52
+ name: nokogiri
53
53
  prerelease: false
54
54
  requirement: &id003 !ruby/object:Gem::Requirement
55
55
  none: false
@@ -63,37 +63,25 @@ dependencies:
63
63
  type: :runtime
64
64
  version_requirements: *id003
65
65
  - !ruby/object:Gem::Dependency
66
- name: nokogiri
66
+ name: ruby-mp3info
67
67
  prerelease: false
68
68
  requirement: &id004 !ruby/object:Gem::Requirement
69
69
  none: false
70
70
  requirements:
71
- - - ">="
71
+ - - "="
72
72
  - !ruby/object:Gem::Version
73
- hash: 3
73
+ hash: 27
74
74
  segments:
75
75
  - 0
76
- version: "0"
76
+ - 6
77
+ - 14
78
+ version: 0.6.14
77
79
  type: :runtime
78
80
  version_requirements: *id004
79
- - !ruby/object:Gem::Dependency
80
- name: ruby-mp3info
81
- prerelease: false
82
- requirement: &id005 !ruby/object:Gem::Requirement
83
- none: false
84
- requirements:
85
- - - ">="
86
- - !ruby/object:Gem::Version
87
- hash: 3
88
- segments:
89
- - 0
90
- version: "0"
91
- type: :runtime
92
- version_requirements: *id005
93
81
  - !ruby/object:Gem::Dependency
94
82
  name: rspec
95
83
  prerelease: false
96
- requirement: &id006 !ruby/object:Gem::Requirement
84
+ requirement: &id005 !ruby/object:Gem::Requirement
97
85
  none: false
98
86
  requirements:
99
87
  - - ">="
@@ -103,11 +91,11 @@ dependencies:
103
91
  - 2
104
92
  version: "2"
105
93
  type: :development
106
- version_requirements: *id006
94
+ version_requirements: *id005
107
95
  - !ruby/object:Gem::Dependency
108
96
  name: bundler
109
97
  prerelease: false
110
- requirement: &id007 !ruby/object:Gem::Requirement
98
+ requirement: &id006 !ruby/object:Gem::Requirement
111
99
  none: false
112
100
  requirements:
113
101
  - - ~>
@@ -119,11 +107,11 @@ dependencies:
119
107
  - 0
120
108
  version: 1.0.0
121
109
  type: :development
122
- version_requirements: *id007
110
+ version_requirements: *id006
123
111
  - !ruby/object:Gem::Dependency
124
112
  name: jeweler
125
113
  prerelease: false
126
- requirement: &id008 !ruby/object:Gem::Requirement
114
+ requirement: &id007 !ruby/object:Gem::Requirement
127
115
  none: false
128
116
  requirements:
129
117
  - - ~>
@@ -135,11 +123,11 @@ dependencies:
135
123
  - 2
136
124
  version: 1.5.2
137
125
  type: :development
138
- version_requirements: *id008
126
+ version_requirements: *id007
139
127
  - !ruby/object:Gem::Dependency
140
128
  name: httparty
141
129
  prerelease: false
142
- requirement: &id009 !ruby/object:Gem::Requirement
130
+ requirement: &id008 !ruby/object:Gem::Requirement
143
131
  none: false
144
132
  requirements:
145
133
  - - ">="
@@ -151,25 +139,11 @@ dependencies:
151
139
  - 4
152
140
  version: 0.7.4
153
141
  type: :runtime
154
- version_requirements: *id009
142
+ version_requirements: *id008
155
143
  - !ruby/object:Gem::Dependency
156
144
  name: sqlite3
157
145
  prerelease: false
158
- requirement: &id010 !ruby/object:Gem::Requirement
159
- none: false
160
- requirements:
161
- - - ">="
162
- - !ruby/object:Gem::Version
163
- hash: 3
164
- segments:
165
- - 0
166
- version: "0"
167
- type: :runtime
168
- version_requirements: *id010
169
- - !ruby/object:Gem::Dependency
170
- name: character-encodings
171
- prerelease: false
172
- requirement: &id011 !ruby/object:Gem::Requirement
146
+ requirement: &id009 !ruby/object:Gem::Requirement
173
147
  none: false
174
148
  requirements:
175
149
  - - ">="
@@ -179,11 +153,11 @@ dependencies:
179
153
  - 0
180
154
  version: "0"
181
155
  type: :runtime
182
- version_requirements: *id011
156
+ version_requirements: *id009
183
157
  - !ruby/object:Gem::Dependency
184
158
  name: nokogiri
185
159
  prerelease: false
186
- requirement: &id012 !ruby/object:Gem::Requirement
160
+ requirement: &id010 !ruby/object:Gem::Requirement
187
161
  none: false
188
162
  requirements:
189
163
  - - ">"
@@ -195,24 +169,24 @@ dependencies:
195
169
  - 0
196
170
  version: 1.4.0
197
171
  type: :runtime
198
- version_requirements: *id012
172
+ version_requirements: *id010
199
173
  - !ruby/object:Gem::Dependency
200
174
  name: ruby-mp3info
201
175
  prerelease: false
202
- requirement: &id013 !ruby/object:Gem::Requirement
176
+ requirement: &id011 !ruby/object:Gem::Requirement
203
177
  none: false
204
178
  requirements:
205
- - - ">"
179
+ - - "="
206
180
  - !ruby/object:Gem::Version
207
- hash: 7
181
+ hash: 27
208
182
  segments:
209
183
  - 0
210
184
  - 6
211
- - 0
212
- version: 0.6.0
185
+ - 14
186
+ version: 0.6.14
213
187
  type: :runtime
214
- version_requirements: *id013
215
- description: Ruby HypeM utility
188
+ version_requirements: *id011
189
+ description: Lyrical genius, voice of a generation.
216
190
  email: sam.vincent@mac.com
217
191
  executables:
218
192
  - kanye
@@ -229,6 +203,7 @@ files:
229
203
  - Rakefile
230
204
  - VERSION
231
205
  - bin/kanye
206
+ - kanye.gemspec
232
207
  - lib/kanye.rb
233
208
  - lib/kanye/history.rb
234
209
  - lib/kanye/track.rb