relaton-iho 1.16.0 → 1.16.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.
- checksums.yaml +4 -4
- data/lib/relaton_iho/config.rb +10 -0
- data/lib/relaton_iho/iho_bibliography.rb +9 -4
- data/lib/relaton_iho/util.rb +9 -0
- data/lib/relaton_iho/version.rb +1 -1
- data/lib/relaton_iho.rb +6 -4
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9081030fd9879044f6a850380bd33459ce7ecdd76869c37364b0364e5b4069cd
|
4
|
+
data.tar.gz: e65329781f6306a9eda0850bbff0951d348aaff0359067de4d9c9636dcf31ebb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 584611520dcf2fc502065c40755d328b720026811164bdf265a16e121b2e26e1f77f81ae06e42ca71ba37fd16214ee52ed149a9f3c8529cb2074d895cad3302f
|
7
|
+
data.tar.gz: 68bee2e7910c5863aae0411af064c6825f124fff7a996550fdf983f5300bd45deeae128a6aeeac2e3da39bf272c8efe9e3af4c9e0117c7451bbf8aa0a2146fd0
|
@@ -14,21 +14,26 @@ module RelatonIho
|
|
14
14
|
# @return [RelatonIho::IhoBibliographicItem, nil] the IHO standard or nil if not found
|
15
15
|
#
|
16
16
|
def search(text, _year = nil, _opts = {}) # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
17
|
-
warn "
|
17
|
+
Util.warn "(#{text}) fetching..."
|
18
18
|
ref = text.sub(/^IHO\s/, "").sub(/^([[:alpha:]]+)(\d+)/, '\1-\2')
|
19
19
|
index = Relaton::Index.find_or_create :iho, url: "#{ENDPOINT}index.zip"
|
20
20
|
row = index.search(ref).max_by { |r| r[:id] }
|
21
|
-
|
21
|
+
unless row
|
22
|
+
Util.warn "(#{text}) not found"
|
23
|
+
return
|
24
|
+
end
|
22
25
|
|
23
26
|
uri = URI("#{ENDPOINT}#{row[:file]}")
|
24
27
|
resp = Net::HTTP.get_response uri
|
25
|
-
|
28
|
+
unless resp.code == "200"
|
29
|
+
raise RelatonBib::RequestError, "Could not access #{uri}: HTTP #{resp.code}"
|
30
|
+
end
|
26
31
|
|
27
32
|
yaml = RelatonBib.parse_yaml resp.body, [Date]
|
28
33
|
hash = HashConverter.hash_to_bib yaml
|
29
34
|
hash[:fetched] = Date.today.to_s
|
30
35
|
item = IhoBibliographicItem.new(**hash)
|
31
|
-
warn "
|
36
|
+
Util.warn "(#{text}) found `#{item.docidentifier.first.id}`"
|
32
37
|
item
|
33
38
|
rescue SocketError, Errno::EINVAL, Errno::ECONNRESET, EOFError,
|
34
39
|
Net::HTTPBadResponse, Net::HTTPHeaderSyntaxError,
|
data/lib/relaton_iho/version.rb
CHANGED
data/lib/relaton_iho.rb
CHANGED
@@ -3,6 +3,8 @@ require "yaml"
|
|
3
3
|
require "relaton_bib"
|
4
4
|
require "relaton/index"
|
5
5
|
require "relaton_iho/version"
|
6
|
+
require "relaton_iho/config"
|
7
|
+
require "relaton_iho/util"
|
6
8
|
require "relaton_iho/iho_bibliography"
|
7
9
|
require "relaton_iho/hash_converter"
|
8
10
|
require "relaton_iho/xml_parser"
|
@@ -17,9 +19,9 @@ module RelatonIho
|
|
17
19
|
# Returns hash of XML reammar
|
18
20
|
# @return [String]
|
19
21
|
def self.grammar_hash
|
20
|
-
gem_path = File.expand_path "..", __dir__
|
21
|
-
grammars_path = File.join gem_path, "grammars", "*"
|
22
|
-
grammars = Dir[grammars_path].sort.map { |gp| File.read gp }.join
|
23
|
-
Digest::MD5.hexdigest grammars
|
22
|
+
# gem_path = File.expand_path "..", __dir__
|
23
|
+
# grammars_path = File.join gem_path, "grammars", "*"
|
24
|
+
# grammars = Dir[grammars_path].sort.map { |gp| File.read gp }.join
|
25
|
+
Digest::MD5.hexdigest RelatonIho::VERSION + RelatonBib::VERSION # grammars
|
24
26
|
end
|
25
27
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: relaton-iho
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.16.
|
4
|
+
version: 1.16.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-09-
|
11
|
+
date: 2023-09-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: relaton-bib
|
@@ -62,6 +62,7 @@ files:
|
|
62
62
|
- grammars/relaton-iho.rng
|
63
63
|
- lib/relaton_iho.rb
|
64
64
|
- lib/relaton_iho/comment_periond.rb
|
65
|
+
- lib/relaton_iho/config.rb
|
65
66
|
- lib/relaton_iho/editorial_group.rb
|
66
67
|
- lib/relaton_iho/eg.yml
|
67
68
|
- lib/relaton_iho/hash_converter.rb
|
@@ -69,6 +70,7 @@ files:
|
|
69
70
|
- lib/relaton_iho/iho_bibliography.rb
|
70
71
|
- lib/relaton_iho/iho_group.rb
|
71
72
|
- lib/relaton_iho/processor.rb
|
73
|
+
- lib/relaton_iho/util.rb
|
72
74
|
- lib/relaton_iho/version.rb
|
73
75
|
- lib/relaton_iho/xml_parser.rb
|
74
76
|
- relaton_iho.gemspec
|