unclekryon 0.4.10 → 0.4.11

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 (53) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +6 -19
  3. data/Gemfile.lock +19 -23
  4. data/README.md +3 -2
  5. data/Rakefile +11 -30
  6. data/bin/unclekryon +4 -15
  7. data/hax/kryon.yaml +28 -0
  8. data/hax/kryon_aums_2002-2005.yaml +460 -0
  9. data/hax/kryon_aums_2006.yaml +601 -0
  10. data/hax/kryon_aums_2007.yaml +1024 -0
  11. data/hax/kryon_aums_2008.yaml +950 -0
  12. data/hax/kryon_aums_2009.yaml +496 -0
  13. data/hax/kryon_aums_2010.yaml +1443 -0
  14. data/hax/kryon_aums_2011.yaml +1458 -0
  15. data/hax/kryon_aums_2012.yaml +2123 -0
  16. data/hax/kryon_aums_2013.yaml +1647 -0
  17. data/hax/kryon_aums_2014.yaml +2478 -0
  18. data/hax/kryon_aums_2015.yaml +3386 -0
  19. data/hax/kryon_aums_2016.yaml +3476 -0
  20. data/hax/kryon_aums_2017.yaml +3712 -0
  21. data/hax/kryon_aums_2018.yaml +3654 -0
  22. data/lib/unclekryon.rb +165 -165
  23. data/lib/unclekryon/data/album_data.rb +74 -82
  24. data/lib/unclekryon/data/artist_data.rb +24 -36
  25. data/lib/unclekryon/data/artist_data_data.rb +29 -41
  26. data/lib/unclekryon/data/aum_data.rb +20 -32
  27. data/lib/unclekryon/data/base_data.rb +27 -39
  28. data/lib/unclekryon/data/pic_data.rb +25 -37
  29. data/lib/unclekryon/data/release_data.rb +14 -26
  30. data/lib/unclekryon/data/social_data.rb +6 -18
  31. data/lib/unclekryon/data/timespan_data.rb +16 -28
  32. data/lib/unclekryon/dev_opts.rb +7 -19
  33. data/lib/unclekryon/hacker.rb +119 -133
  34. data/lib/unclekryon/iso.rb +128 -138
  35. data/lib/unclekryon/iso/base_iso.rb +69 -81
  36. data/lib/unclekryon/iso/can_prov_terr.rb +34 -47
  37. data/lib/unclekryon/iso/country.rb +36 -49
  38. data/lib/unclekryon/iso/language.rb +86 -96
  39. data/lib/unclekryon/iso/region.rb +11 -25
  40. data/lib/unclekryon/iso/subregion.rb +11 -25
  41. data/lib/unclekryon/iso/usa_state.rb +28 -41
  42. data/lib/unclekryon/jsoner.rb +31 -50
  43. data/lib/unclekryon/log.rb +34 -46
  44. data/lib/unclekryon/parsers/kryon_aum_year_album_parser.rb +163 -167
  45. data/lib/unclekryon/parsers/kryon_aum_year_parser.rb +122 -127
  46. data/lib/unclekryon/server.rb +8 -17
  47. data/lib/unclekryon/trainer.rb +69 -83
  48. data/lib/unclekryon/uploader.rb +8 -17
  49. data/lib/unclekryon/util.rb +80 -92
  50. data/lib/unclekryon/version.rb +4 -16
  51. data/train/kryon.yaml +6077 -0
  52. data/unclekryon.gemspec +44 -42
  53. metadata +59 -16
data/unclekryon.gemspec CHANGED
@@ -1,66 +1,68 @@
1
1
  # encoding: UTF-8
2
2
  # frozen_string_literal: true
3
3
 
4
- #--
5
- # This file is part of UncleKryon-server.
6
- # Copyright (c) 2017-2019 Jonathan Bradley Whited (@esotericpig)
7
- #
8
- # UncleKryon-server is free software: you can redistribute it and/or modify
9
- # it under the terms of the GNU General Public License as published by
10
- # the Free Software Foundation, either version 3 of the License, or
11
- # (at your option) any later version.
12
- #
13
- # UncleKryon-server is distributed in the hope that it will be useful,
14
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
15
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
- # GNU General Public License for more details.
17
- #
18
- # You should have received a copy of the GNU General Public License
19
- # along with UncleKryon-server. If not, see <https://www.gnu.org/licenses/>.
20
- #++
21
-
22
4
 
23
5
  lib = File.expand_path(File.join('..','lib'),__FILE__)
24
6
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
25
7
 
26
8
  require 'unclekryon/version'
27
9
 
28
- Gem::Specification.new() do |spec|
10
+ Gem::Specification.new do |spec|
29
11
  spec.name = 'unclekryon'
30
12
  spec.version = UncleKryon::VERSION
31
- spec.authors = ['Jonathan Bradley Whited (@esotericpig)']
32
- spec.email = ['bradley@esotericpig.com']
13
+ spec.authors = ['Jonathan Bradley Whited']
14
+ spec.email = ['code@esotericpig.com']
33
15
  spec.licenses = ['GPL-3.0-or-later']
34
16
  spec.homepage = 'https://github.com/esotericpig/UncleKryon-server'
35
17
  spec.summary = 'Uncle Kryon server (& hacker).'
36
18
  spec.description = 'Uncle Kryon server (& hacker) for the Uncle Kryon mobile apps.'
37
-
19
+
38
20
  spec.metadata = {
39
- 'bug_tracker_uri' => 'https://github.com/esotericpig/UncleKryon-server/issues',
40
21
  'homepage_uri' => 'https://github.com/esotericpig/UncleKryon-server',
41
22
  'source_code_uri' => 'https://github.com/esotericpig/UncleKryon-server',
23
+ 'changelog_uri' => 'https://github.com/esotericpig/UncleKryon-server/releases',
24
+ 'bug_tracker_uri' => 'https://github.com/esotericpig/UncleKryon-server/issues',
42
25
  }
43
-
26
+
44
27
  spec.require_paths = ['lib']
45
28
  spec.bindir = 'bin'
46
29
  spec.executables = [spec.name]
47
-
48
- spec.files = Dir.glob(File.join("{#{spec.require_paths.join(',')}}",'**','*.{rb}')) +
49
- Dir.glob(File.join(spec.bindir,'*')) +
50
- Dir.glob(File.join("{iso,test}",'**','*.{rb,yaml}')) +
51
- %W( Gemfile Gemfile.lock #{spec.name}.gemspec Rakefile ) +
52
- %w( LICENSE README.md )
53
-
54
- spec.required_ruby_version = '>= 2.4.0'
55
- spec.requirements << 'Nokogiri: https://www.nokogiri.org/tutorials/installing_nokogiri.html'
56
-
57
- spec.add_runtime_dependency 'nokogiri','~> 1.10' # For hacking HTML
58
-
59
- spec.add_development_dependency 'bundler' ,'~> 2.1'
60
- spec.add_development_dependency 'irb' ,'~> 1.2'
61
- spec.add_development_dependency 'minitest','~> 5.14' # For testing
30
+
31
+ spec.files = [
32
+ Dir.glob(File.join("{#{spec.require_paths.join(',')},test}",'**','*.{erb,rb}')),
33
+ Dir.glob(File.join(spec.bindir,'*')),
34
+ Dir.glob(File.join('{hax,iso,train}','**','*.{yaml,yml}')),
35
+ %W[ Gemfile Gemfile.lock #{spec.name}.gemspec Rakefile ],
36
+ %w[ LICENSE README.md ],
37
+ ].flatten
38
+
39
+ spec.required_ruby_version = '>= 2.5.0'
40
+ spec.requirements = [
41
+ 'Nokogiri: https://www.nokogiri.org/tutorials/installing_nokogiri.html',
42
+ ]
43
+
44
+ # Uses exact version in case the author breaks something.
45
+ # Please see the Gemfile for more details.
46
+ spec.add_runtime_dependency 'nbayes' ,'0.1.3' # Training type of text (machine learning).
47
+ spec.add_runtime_dependency 'nokogiri','~> 1.11' # Hacking HTML.
48
+
49
+ spec.add_development_dependency 'bundler' ,'~> 2.2'
50
+ spec.add_development_dependency 'irb' ,'~> 1.3' # IRB rake task.
51
+ spec.add_development_dependency 'minitest','~> 5.14'
62
52
  spec.add_development_dependency 'rake' ,'~> 13.0'
63
- spec.add_development_dependency 'raketeer','~> 0.2' # For Nokogiri & IRB rake tasks
64
-
65
- spec.post_install_message = "You can now use [#{spec.executables.join(', ')}] on the command line."
53
+ spec.add_development_dependency 'raketeer','~> 0.2' # Nokogiri & IRB rake tasks.
54
+
55
+ spec.post_install_message = <<-MSG
56
+
57
+ UncleKryon v#{UncleKryon::VERSION}
58
+
59
+ You can now use [#{spec.executables.join(', ')}] on the command line.
60
+
61
+ Homepage: #{spec.homepage}
62
+
63
+ Code: #{spec.metadata['source_code_uri']}
64
+ Changelog: #{spec.metadata['changelog_uri']}
65
+ Bugs: #{spec.metadata['bug_tracker_uri']}
66
+
67
+ MSG
66
68
  end
metadata CHANGED
@@ -1,57 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unclekryon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.10
4
+ version: 0.4.11
5
5
  platform: ruby
6
6
  authors:
7
- - Jonathan Bradley Whited (@esotericpig)
8
- autorequire:
7
+ - Jonathan Bradley Whited
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-28 00:00:00.000000000 Z
11
+ date: 2021-06-30 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: nbayes
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 0.1.3
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '='
25
+ - !ruby/object:Gem::Version
26
+ version: 0.1.3
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: nokogiri
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
31
  - - "~>"
18
32
  - !ruby/object:Gem::Version
19
- version: '1.10'
33
+ version: '1.11'
20
34
  type: :runtime
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
38
  - - "~>"
25
39
  - !ruby/object:Gem::Version
26
- version: '1.10'
40
+ version: '1.11'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: bundler
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - "~>"
32
46
  - !ruby/object:Gem::Version
33
- version: '2.1'
47
+ version: '2.2'
34
48
  type: :development
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
52
  - - "~>"
39
53
  - !ruby/object:Gem::Version
40
- version: '2.1'
54
+ version: '2.2'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: irb
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
59
  - - "~>"
46
60
  - !ruby/object:Gem::Version
47
- version: '1.2'
61
+ version: '1.3'
48
62
  type: :development
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
66
  - - "~>"
53
67
  - !ruby/object:Gem::Version
54
- version: '1.2'
68
+ version: '1.3'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: minitest
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -96,7 +110,7 @@ dependencies:
96
110
  version: '0.2'
97
111
  description: Uncle Kryon server (& hacker) for the Uncle Kryon mobile apps.
98
112
  email:
99
- - bradley@esotericpig.com
113
+ - code@esotericpig.com
100
114
  executables:
101
115
  - unclekryon
102
116
  extensions: []
@@ -108,6 +122,21 @@ files:
108
122
  - README.md
109
123
  - Rakefile
110
124
  - bin/unclekryon
125
+ - hax/kryon.yaml
126
+ - hax/kryon_aums_2002-2005.yaml
127
+ - hax/kryon_aums_2006.yaml
128
+ - hax/kryon_aums_2007.yaml
129
+ - hax/kryon_aums_2008.yaml
130
+ - hax/kryon_aums_2009.yaml
131
+ - hax/kryon_aums_2010.yaml
132
+ - hax/kryon_aums_2011.yaml
133
+ - hax/kryon_aums_2012.yaml
134
+ - hax/kryon_aums_2013.yaml
135
+ - hax/kryon_aums_2014.yaml
136
+ - hax/kryon_aums_2015.yaml
137
+ - hax/kryon_aums_2016.yaml
138
+ - hax/kryon_aums_2017.yaml
139
+ - hax/kryon_aums_2018.yaml
111
140
  - iso/can_provs_terrs.yaml
112
141
  - iso/countries.yaml
113
142
  - iso/iso.yaml
@@ -144,15 +173,28 @@ files:
144
173
  - lib/unclekryon/uploader.rb
145
174
  - lib/unclekryon/util.rb
146
175
  - lib/unclekryon/version.rb
176
+ - train/kryon.yaml
147
177
  - unclekryon.gemspec
148
178
  homepage: https://github.com/esotericpig/UncleKryon-server
149
179
  licenses:
150
180
  - GPL-3.0-or-later
151
181
  metadata:
152
- bug_tracker_uri: https://github.com/esotericpig/UncleKryon-server/issues
153
182
  homepage_uri: https://github.com/esotericpig/UncleKryon-server
154
183
  source_code_uri: https://github.com/esotericpig/UncleKryon-server
155
- post_install_message: You can now use [unclekryon] on the command line.
184
+ changelog_uri: https://github.com/esotericpig/UncleKryon-server/releases
185
+ bug_tracker_uri: https://github.com/esotericpig/UncleKryon-server/issues
186
+ post_install_message: |2+
187
+
188
+ UncleKryon v0.4.11
189
+
190
+ You can now use [unclekryon] on the command line.
191
+
192
+ Homepage: https://github.com/esotericpig/UncleKryon-server
193
+
194
+ Code: https://github.com/esotericpig/UncleKryon-server
195
+ Changelog: https://github.com/esotericpig/UncleKryon-server/releases
196
+ Bugs: https://github.com/esotericpig/UncleKryon-server/issues
197
+
156
198
  rdoc_options: []
157
199
  require_paths:
158
200
  - lib
@@ -160,7 +202,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
160
202
  requirements:
161
203
  - - ">="
162
204
  - !ruby/object:Gem::Version
163
- version: 2.4.0
205
+ version: 2.5.0
164
206
  required_rubygems_version: !ruby/object:Gem::Requirement
165
207
  requirements:
166
208
  - - ">="
@@ -168,8 +210,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
168
210
  version: '0'
169
211
  requirements:
170
212
  - 'Nokogiri: https://www.nokogiri.org/tutorials/installing_nokogiri.html'
171
- rubygems_version: 3.1.2
172
- signing_key:
213
+ rubygems_version: 3.2.15
214
+ signing_key:
173
215
  specification_version: 4
174
216
  summary: Uncle Kryon server (& hacker).
175
217
  test_files: []
218
+ ...