relaton-iec 0.4.2 → 0.4.9

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 5deb1a1e31dd689114d4074a5d89c1d3fa7a4cf4
4
- data.tar.gz: f75fc9dbfa05dbadb932dd31f3f109aa75e22dd5
2
+ SHA256:
3
+ metadata.gz: a09fc2455f5b817776122af2bb34bec70fb51a044db47df5a9461931363ece1d
4
+ data.tar.gz: 2d0f09f8a0558a4b2f7d1b693c3ad50df482ec66673cefc78e47da27c86f2735
5
5
  SHA512:
6
- metadata.gz: d29d36436c3c28448abc371c29fb298eeddf51cd831877dcad2ad3b91669b36ac6dba55d584307fd5402cef388d28e7db055729567cfc6fda5fc8223b733fddc
7
- data.tar.gz: '09f2ee50b82e7c3ee7ba598442b541a74d86817184998e8063ae875fe1a05e3650475a8adae30203906a627719b3762032655209c836d7f084df3d5f5b9a19ca'
6
+ metadata.gz: 9999ce1a869e0680a2cfa26fa767ba376e716cb3dfb42d6af69bf7f9535d1e940571f97ee3d0ab9c2fb19869aa310973e745211c8686a2706ec10a30c8088cef
7
+ data.tar.gz: 3747b139a67b508a618e4b15c2ce63908f31650cfb2696ea2a80c5fa10f3f611ce37e4ae344fc5c1399c1bf4e6cfbb7f044a2e64e17dc3ca1f5c9f1fb8543eb8
data/Gemfile CHANGED
@@ -1,3 +1,6 @@
1
+ Encoding.default_external = Encoding::UTF_8
2
+ Encoding.default_internal = Encoding::UTF_8
3
+
1
4
  source "https://rubygems.org"
2
5
 
3
6
  git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
@@ -1,32 +1,32 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- relaton-iec (0.4.2)
4
+ relaton-iec (0.4.9)
5
5
  addressable
6
6
  relaton-iso-bib (~> 0.3.0)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- addressable (2.6.0)
12
- public_suffix (>= 2.0.2, < 4.0)
11
+ addressable (2.7.0)
12
+ public_suffix (>= 2.0.2, < 5.0)
13
13
  byebug (11.0.1)
14
14
  coderay (1.1.2)
15
15
  crack (0.4.3)
16
16
  safe_yaml (~> 1.0.0)
17
- debase (0.2.2)
17
+ debase (0.2.4.1)
18
18
  debase-ruby_core_source (>= 0.10.2)
19
19
  debase-ruby_core_source (0.10.5)
20
20
  diff-lcs (1.3)
21
21
  docile (1.3.2)
22
22
  equivalent-xml (0.6.0)
23
23
  nokogiri (>= 1.4.3)
24
- hashdiff (0.4.0)
25
- isoics (0.1.7)
24
+ hashdiff (1.0.0)
25
+ isoics (0.1.8)
26
26
  json (2.2.0)
27
27
  method_source (0.9.2)
28
28
  mini_portile2 (2.4.0)
29
- nokogiri (1.10.3)
29
+ nokogiri (1.10.4)
30
30
  mini_portile2 (~> 2.4.0)
31
31
  pry (0.12.2)
32
32
  coderay (~> 1.1.0)
@@ -34,12 +34,12 @@ GEM
34
34
  pry-byebug (3.7.0)
35
35
  byebug (~> 11.0)
36
36
  pry (~> 0.10)
37
- public_suffix (3.1.1)
37
+ public_suffix (4.0.1)
38
38
  rake (10.5.0)
39
- relaton-bib (0.3.2)
39
+ relaton-bib (0.3.11)
40
40
  addressable
41
- nokogiri (~> 1.10)
42
- relaton-iso-bib (0.3.2)
41
+ nokogiri
42
+ relaton-iso-bib (0.3.11)
43
43
  isoics (~> 0.1.6)
44
44
  relaton-bib (~> 0.3.0)
45
45
  ruby_deep_clone (~> 0.8.0)
@@ -47,7 +47,7 @@ GEM
47
47
  rspec-core (~> 3.8.0)
48
48
  rspec-expectations (~> 3.8.0)
49
49
  rspec-mocks (~> 3.8.0)
50
- rspec-core (3.8.1)
50
+ rspec-core (3.8.2)
51
51
  rspec-support (~> 3.8.0)
52
52
  rspec-expectations (3.8.4)
53
53
  diff-lcs (>= 1.2.0, < 2.0)
@@ -60,13 +60,13 @@ GEM
60
60
  rake (>= 0.8.1)
61
61
  ruby_deep_clone (0.8.0)
62
62
  safe_yaml (1.0.5)
63
- simplecov (0.16.1)
63
+ simplecov (0.17.0)
64
64
  docile (~> 1.1)
65
65
  json (>= 1.8, < 3)
66
66
  simplecov-html (~> 0.10.0)
67
67
  simplecov-html (0.10.2)
68
68
  vcr (5.0.0)
69
- webmock (3.6.0)
69
+ webmock (3.7.2)
70
70
  addressable (>= 2.3.6)
71
71
  crack (>= 0.3.2)
72
72
  hashdiff (>= 0.4.0, < 2.0.0)
@@ -1,9 +1,13 @@
1
1
  require "relaton_iec/version"
2
2
  require "relaton_iec/iec_bibliography"
3
- if defined? Relaton
4
- require_relative "relaton/processor"
5
- Relaton::Registry.instance.register(Relaton::RelatonIec::Processor)
6
- end
3
+
4
+ # if defined? Relaton
5
+ # require "relaton_iec/processor"
6
+ # # don't register the gem if it's required form relaton's registry
7
+ # return if caller.detect { |c| c.include? "register_gems" }
8
+
9
+ # Relaton::Registry.instance.register(RelatonIec::Processor)
10
+ # end
7
11
 
8
12
  module RelatonIec
9
13
  # Your code goes here...
@@ -13,7 +13,7 @@ module RelatonIec
13
13
  # @return [RelatonIec::HitCollection]
14
14
  def search(text, year = nil)
15
15
  HitCollection.new text, year
16
- rescue SocketError, OpenURI::HTTPError
16
+ rescue SocketError, OpenURI::HTTPError, OpenSSL::SSL::SSLError
17
17
  raise RelatonBib::RequestError, "Could not access http://www.iec.ch"
18
18
  end
19
19
 
@@ -0,0 +1,33 @@
1
+ require "relaton/processor"
2
+
3
+ module RelatonIec
4
+ class Processor < Relaton::Processor
5
+ def initialize
6
+ @short = :relaton_iec
7
+ @prefix = "IEC"
8
+ @defaultprefix = %r{^(IEC)[ /]|^IEV($| )}
9
+ @idtype = "IEC"
10
+ end
11
+
12
+ # @param code [String]
13
+ # @param date [String, NilClass] year
14
+ # @param opts [Hash]
15
+ # @return [RelatonIsoBib::IsoBibliographicItem]
16
+ def get(code, date, opts)
17
+ ::RelatonIec::IecBibliography.get(code, date, opts)
18
+ end
19
+
20
+ # @param xml [String]
21
+ # @return [RelatonIsoBib::IsoBibliographicItem]
22
+ def from_xml(xml)
23
+ RelatonIsoBib::XMLParser.from_xml xml
24
+ end
25
+
26
+ # @param hash [Hash]
27
+ # @return [RelatonIsoBib::IsoBibliographicItem]
28
+ def hash_to_bib(hash)
29
+ item_hash = ::RelatonIsoBib::HashConverter.hash_to_bib(hash)
30
+ ::RelatonIsoBib::IsoBibliographicItem.new item_hash
31
+ end
32
+ end
33
+ end
@@ -57,13 +57,14 @@ module RelatonIec
57
57
  status, relations = fetch_status_relations hit_data[:url]
58
58
 
59
59
  RelatonIsoBib::IsoBibliographicItem.new(
60
+ fetched: Date.today.to_s,
60
61
  docid: [RelatonBib::DocumentIdentifier.new(id: hit_data[:code], type: "IEC")],
61
62
  structuredidentifier: fetch_structuredidentifier(doc),
62
63
  edition: edition,
63
64
  language: ["en"],
64
65
  script: ["Latn"],
65
66
  title: fetch_titles(hit_data),
66
- type: fetch_type(doc),
67
+ doctype: fetch_type(doc),
67
68
  docstatus: status,
68
69
  ics: fetch_ics(doc),
69
70
  date: fetch_dates(doc),
@@ -169,7 +170,8 @@ module RelatonIec
169
170
  # end
170
171
  Nokogiri::HTML(resp.body)
171
172
  rescue SocketError, Timeout::Error, Errno::EINVAL, Errno::ECONNRESET, EOFError,
172
- Net::HTTPBadResponse, Net::HTTPHeaderSyntaxError, Net::ProtocolError
173
+ Net::HTTPBadResponse, Net::HTTPHeaderSyntaxError, Net::ProtocolError,
174
+ OpenSSL::SSL::SSLError
173
175
  raise RelatonBib::RequestError, "Could not access #{url}"
174
176
  end
175
177
  # rubocop:enable Metrics/AbcSize
@@ -292,8 +294,8 @@ module RelatonIec
292
294
  # @param doc [Nokogiri::HTML::Document]
293
295
  # @return [String]
294
296
  def fetch_type(doc)
295
- doc.at('//th[contains(., "Publication type")]/following-sibling::td/span')
296
- .text.downcase.tr " ", "-"
297
+ doc.at('//th[contains(., "Publication type")]/following-sibling::td/span').
298
+ text.downcase.tr " ", "-"
297
299
  # type_match = title.match(%r{^(ISO|IWA|IEC)(?:(/IEC|/IEEE|/PRF|
298
300
  # /NP)*\s|/)(TS|TR|PAS|AWI|CD|FDIS|NP|DIS|WD|R|Guide|(?=\d+))}x)
299
301
  # #return "international-standard" if type_match.nil?
@@ -1,3 +1,3 @@
1
1
  module RelatonIec
2
- VERSION = "0.4.2".freeze
2
+ VERSION = "0.4.9".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-iec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
4
+ version: 0.4.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-08-02 00:00:00.000000000 Z
11
+ date: 2019-10-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -198,11 +198,11 @@ files:
198
198
  - appveyor.yml
199
199
  - bin/console
200
200
  - bin/setup
201
- - lib/relaton/processor.rb
202
201
  - lib/relaton_iec.rb
203
202
  - lib/relaton_iec/hit.rb
204
203
  - lib/relaton_iec/hit_collection.rb
205
204
  - lib/relaton_iec/iec_bibliography.rb
205
+ - lib/relaton_iec/processor.rb
206
206
  - lib/relaton_iec/scrapper.rb
207
207
  - lib/relaton_iec/statuses.yml
208
208
  - lib/relaton_iec/version.rb
@@ -226,8 +226,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
226
226
  - !ruby/object:Gem::Version
227
227
  version: '0'
228
228
  requirements: []
229
- rubyforge_project:
230
- rubygems_version: 2.6.12
229
+ rubygems_version: 3.0.6
231
230
  signing_key:
232
231
  specification_version: 4
233
232
  summary: 'RelatonIec: retrieve IEC Standards for bibliographic use using the IsoBibliographicItem
@@ -1,23 +0,0 @@
1
- require "relaton/processor"
2
-
3
- module Relaton
4
- module RelatonIec
5
- class Processor < Relaton::Processor
6
-
7
- def initialize
8
- @short = :relaton_iec
9
- @prefix = "IEC"
10
- @defaultprefix = %r{^(IEC)[ /]|^IEV($| )}
11
- @idtype = "IEC"
12
- end
13
-
14
- def get(code, date, opts)
15
- ::RelatonIec::IecBibliography.get(code, date, opts)
16
- end
17
-
18
- def from_xml(xml)
19
- RelatonIsoBib::XMLParser.from_xml xml
20
- end
21
- end
22
- end
23
- end