relaton-iana 1.12.2 → 1.12.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/relaton_iana/data_fetcher.rb +7 -3
- data/lib/relaton_iana/iana_bibliography.rb +2 -0
- data/lib/relaton_iana/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: f252aaed0f38fd807bb42f46e68e6711a550d3ae3bedf8b3c1d5be678de559fb
|
4
|
+
data.tar.gz: e330cfa8122d9248b251826e4384e13f8980c7006bfc6dfd4e51ff849747d12b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2f9f6474c8a94b2a4f7f13a65a7bcf4fa16ccdd13d86623b8eecf42f719d2f6f69feb0daf448a8aa65a1f0a9819498a5b23a880a4de3b057d88114ac54f55e98
|
7
|
+
data.tar.gz: 186707bedaa38b15cd2bdd0d53ed0c498c0b2815135f169ac432a7460cb397e488c7c1fc0613cec7cc8b44c565d55fb37004e346d9bf4a6f1d7867720f839c2e
|
@@ -38,7 +38,7 @@ module RelatonIana
|
|
38
38
|
#
|
39
39
|
def fetch(page = 1) # rubocop:disable Metrics/AbcSize, Metrics/MethodLength, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
|
40
40
|
params = {
|
41
|
-
q: "repo:ietf-
|
41
|
+
q: "repo:ietf-tools/iana-registries extension:xml",
|
42
42
|
page: page, per_page: 100
|
43
43
|
}
|
44
44
|
if ENV["GITHUB_TOKEN"]
|
@@ -46,10 +46,14 @@ module RelatonIana
|
|
46
46
|
end
|
47
47
|
attempt = 0
|
48
48
|
json = {}
|
49
|
+
resp = nil
|
49
50
|
until attempt > 3 || json["items"]
|
50
51
|
if attempt.positive?
|
51
|
-
|
52
|
-
|
52
|
+
t = resp.headers["x-ratelimit-reset"].to_i - Time.now.to_i
|
53
|
+
if t.positive?
|
54
|
+
warn "Rate limit is reached. Retrying in #{t} sec."
|
55
|
+
sleep t
|
56
|
+
end
|
53
57
|
end
|
54
58
|
attempt += 1
|
55
59
|
resp = Faraday.get "https://api.github.com/search/code", params, headers
|
@@ -11,6 +11,8 @@ module RelatonIana
|
|
11
11
|
file = text.sub(/^IANA\s/, "").gsub(/[\s,:\/]/, "_").downcase
|
12
12
|
url = "#{SOURCE}#{file}.yaml"
|
13
13
|
resp = Net::HTTP.get_response URI(url)
|
14
|
+
return unless resp.code == "200"
|
15
|
+
|
14
16
|
hash = YAML.safe_load resp.body
|
15
17
|
RelatonBib::BibliographicItem.from_hash hash
|
16
18
|
rescue SocketError, Timeout::Error, Errno::EINVAL, Errno::ECONNRESET,
|
data/lib/relaton_iana/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: relaton-iana
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.12.
|
4
|
+
version: 1.12.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-08-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: equivalent-xml
|