kanye 0.1.0 → 0.1.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.
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