kovid 0.6.6 β 0.6.7
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.
- checksums.yaml +4 -4
- data/.rubocop.yml +3 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +18 -1
- data/README.md +3 -1
- data/lib/kovid.rb +0 -2
- data/lib/kovid/aggregators.rb +0 -1
- data/lib/kovid/cache.rb +0 -4
- data/lib/kovid/cli.rb +0 -2
- data/lib/kovid/helpers.rb +6 -0
- data/lib/kovid/historians.rb +2 -4
- data/lib/kovid/painter.rb +0 -2
- data/lib/kovid/request.rb +6 -9
- data/lib/kovid/tablelize.rb +0 -1
- data/lib/kovid/uri_builder.rb +0 -1
- data/lib/kovid/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a77d1ad2686877dfe810f0df3cbc817b46c287f2a6025ce999108213ad0e54c8
|
4
|
+
data.tar.gz: 888dab7db56dc55241512e24bef98fb9f9117abd9e09790a19894630d691e0c2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6394d6904a073fef5c4fa1d6429c3789a84dfc329a519346dd90e53b082b22284405a044a13c984cf231f7cdd02fb790c49450c47c1d6c0fecb124fbc67783e5
|
7
|
+
data.tar.gz: 7c45571d9683f723068c6d17a97427348c5d3f8ed64db76e2bd71db72af322f3611bd0d66af8dc3732d4a251f1253d2ea0d49c0db34f8c905739f7cc7dd885cc
|
data/.rubocop.yml
CHANGED
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
kovid (0.6.
|
4
|
+
kovid (0.6.6)
|
5
5
|
ascii_charts (~> 0.9.1)
|
6
6
|
rainbow (~> 3.0)
|
7
7
|
terminal-table (~> 1.8)
|
@@ -11,12 +11,24 @@ PATH
|
|
11
11
|
GEM
|
12
12
|
remote: https://rubygems.org/
|
13
13
|
specs:
|
14
|
+
activesupport (6.0.2.2)
|
15
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
16
|
+
i18n (>= 0.7, < 2)
|
17
|
+
minitest (~> 5.1)
|
18
|
+
tzinfo (~> 1.1)
|
19
|
+
zeitwerk (~> 2.2)
|
14
20
|
ascii_charts (0.9.1)
|
21
|
+
carmen (1.1.3)
|
22
|
+
activesupport (>= 3.0.0)
|
23
|
+
concurrent-ruby (1.1.6)
|
15
24
|
diff-lcs (1.3)
|
16
25
|
docile (1.3.2)
|
17
26
|
ethon (0.12.0)
|
18
27
|
ffi (>= 1.3.0)
|
19
28
|
ffi (1.12.2)
|
29
|
+
i18n (1.8.2)
|
30
|
+
concurrent-ruby (~> 1.0)
|
31
|
+
minitest (5.14.0)
|
20
32
|
rainbow (3.0.0)
|
21
33
|
rake (12.3.3)
|
22
34
|
rspec (3.9.0)
|
@@ -39,14 +51,19 @@ GEM
|
|
39
51
|
terminal-table (1.8.0)
|
40
52
|
unicode-display_width (~> 1.1, >= 1.1.1)
|
41
53
|
thor (1.0.1)
|
54
|
+
thread_safe (0.3.6)
|
42
55
|
typhoeus (1.3.1)
|
43
56
|
ethon (>= 0.9.0)
|
57
|
+
tzinfo (1.2.7)
|
58
|
+
thread_safe (~> 0.1)
|
44
59
|
unicode-display_width (1.7.0)
|
60
|
+
zeitwerk (2.3.0)
|
45
61
|
|
46
62
|
PLATFORMS
|
47
63
|
ruby
|
48
64
|
|
49
65
|
DEPENDENCIES
|
66
|
+
carmen (~> 1.1.3)
|
50
67
|
kovid!
|
51
68
|
rake (~> 12.0)
|
52
69
|
rspec (~> 3.0)
|
data/README.md
CHANGED
@@ -46,6 +46,8 @@ You can fetch US state-specific data:
|
|
46
46
|
* `kovid state STATE` OR `kovid state "STATE NAME"`.
|
47
47
|
* `kovid states --all` or `kovid states -a` for data on all US states.
|
48
48
|
|
49
|
+
You can also use USPS abbreviations. Example: `kovid state me`
|
50
|
+
|
49
51
|
Provinces
|
50
52
|
|
51
53
|
You can fetch province specific data:
|
@@ -64,7 +66,7 @@ You can compare as many countries as you want; `kovid compare FOO BAR BAZ` OR `k
|
|
64
66
|
πΊπΈπΊπΈπΊπΈ
|
65
67
|
|
66
68
|
You can compare US states with:
|
67
|
-
* `kovid states STATE STATE` Example: `kovid states illinois "new york" california`
|
69
|
+
* `kovid states STATE STATE` Example: `kovid states illinois "new york" california` OR `kovid states il ny ca`
|
68
70
|
|
69
71
|
You can compare provicnes with:
|
70
72
|
* `kovid provinces PROVINCE PROVINCE` Example: `kovid provinces ontario manitoba`
|
data/lib/kovid.rb
CHANGED
data/lib/kovid/aggregators.rb
CHANGED
data/lib/kovid/cache.rb
CHANGED
data/lib/kovid/cli.rb
CHANGED
data/lib/kovid/helpers.rb
CHANGED
@@ -30,4 +30,10 @@ module Kovid
|
|
30
30
|
data.map! { |number| Kovid.comma_delimit(number) }
|
31
31
|
end
|
32
32
|
end
|
33
|
+
|
34
|
+
def lookup_us_state(state)
|
35
|
+
us = Carmen::Country.coded('USA')
|
36
|
+
lookup = us.subregions.coded(state) || us.subregions.named(state)
|
37
|
+
lookup ? lookup.name : state
|
38
|
+
end
|
33
39
|
end
|
data/lib/kovid/historians.rb
CHANGED
@@ -1,13 +1,11 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module Kovid
|
4
|
-
# Constructs history data for specified country
|
5
4
|
module Historians
|
6
5
|
include Constants
|
7
6
|
|
8
7
|
def history(country, last)
|
9
|
-
# Write checks for when country is spelt wrong.
|
10
|
-
headings = DATE_CASES_DEATHS_RECOVERED
|
8
|
+
# TODO: Write checks for when country is spelt wrong.
|
11
9
|
rows = []
|
12
10
|
|
13
11
|
stats = if last
|
@@ -40,7 +38,7 @@ module Kovid
|
|
40
38
|
|
41
39
|
Terminal::Table.new(
|
42
40
|
title: country['country'].upcase,
|
43
|
-
headings:
|
41
|
+
headings: DATE_CASES_DEATHS_RECOVERED,
|
44
42
|
rows: rows
|
45
43
|
)
|
46
44
|
end
|
data/lib/kovid/painter.rb
CHANGED
data/lib/kovid/request.rb
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'json'
|
4
|
+
require 'carmen'
|
4
5
|
require_relative 'tablelize'
|
5
6
|
require_relative 'cache'
|
6
7
|
require_relative 'uri_builder'
|
7
8
|
|
8
9
|
module Kovid
|
9
|
-
# Makes requests to external source to collect cases data
|
10
10
|
class Request
|
11
11
|
COUNTRIES_PATH = UriBuilder.new('/countries').url
|
12
12
|
STATES_URL = UriBuilder.new('/states').url
|
@@ -110,7 +110,7 @@ module Kovid
|
|
110
110
|
end
|
111
111
|
|
112
112
|
def state(state)
|
113
|
-
response = fetch_state(state)
|
113
|
+
response = fetch_state(Kovid.lookup_us_state(state))
|
114
114
|
if response.nil?
|
115
115
|
not_found(state)
|
116
116
|
else
|
@@ -122,7 +122,6 @@ module Kovid
|
|
122
122
|
|
123
123
|
def states(states)
|
124
124
|
compared_states = fetch_compared_states(states)
|
125
|
-
|
126
125
|
Kovid::Tablelize.compare_us_states(compared_states)
|
127
126
|
rescue JSON::ParserError
|
128
127
|
puts SERVER_DOWN
|
@@ -205,10 +204,10 @@ module Kovid
|
|
205
204
|
end
|
206
205
|
|
207
206
|
def fetch_compared_states(submitted_states)
|
208
|
-
|
207
|
+
submitted_states.map! { |s| Kovid.lookup_us_state(s) }
|
209
208
|
|
210
|
-
|
211
|
-
submitted_states.include?(state['state']
|
209
|
+
fetch_state_data.select do |state|
|
210
|
+
submitted_states.include?(state['state'])
|
212
211
|
end
|
213
212
|
end
|
214
213
|
|
@@ -218,9 +217,7 @@ module Kovid
|
|
218
217
|
|
219
218
|
def fetch_country(country_name)
|
220
219
|
# TODO: Match ISOs to full country names
|
221
|
-
if country_name ==
|
222
|
-
country_name = "nl"
|
223
|
-
end
|
220
|
+
country_name = 'nl' if country_name == 'netherlands'
|
224
221
|
country_url = COUNTRIES_PATH + "/#{country_name}"
|
225
222
|
|
226
223
|
JSON.parse(Typhoeus.get(country_url, cache_ttl: 900).response_body)
|
data/lib/kovid/tablelize.rb
CHANGED
data/lib/kovid/uri_builder.rb
CHANGED
data/lib/kovid/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kovid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Emmanuel Hayford
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-04-
|
11
|
+
date: 2020-04-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ascii_charts
|