relaton-iso 1.0.4 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 50a6b1b3492ba93ad87e502c5b98d71946277db082a6808c509018f0f454c596
4
- data.tar.gz: d40c8012e7eb776276cab1bc0ecf9d853651917dfdabfe6a96c761b0abd059ac
3
+ metadata.gz: 24730f7e5d5dbf0d524cd3c2ff3c0b38484d91c27b61a2b66662fcf56125cd46
4
+ data.tar.gz: d432201c27f1a6e9ed53765311af71c976b748bc302b30afb8869dea379435b8
5
5
  SHA512:
6
- metadata.gz: a53a91f835cc53171b34f6a79d2d7a6e6533f1f0181ada1daaaaafda12feb7a505dda718456771e0b24bed8c49b9075b3b91e5dbdb501844603629ce4dff2fa7
7
- data.tar.gz: 06dac6e83cde8774fb3862d76fea547965e3a097a781c5c22f29332a0b2946f89dbbc751cde1c0492820e072e96d2913a5e0df097eb339a789c03046c30ef257
6
+ metadata.gz: bd023540869b80f849eae953fde47d471121ff252d003815b2479b4bdd4e6647a65d1675183f8b29d4c08c5eb8e8dbc43c22961fb27e2abf8c1921a65eba8861
7
+ data.tar.gz: 2486c06e8dcee6bb301ccdb477f33b82587d68149d81939b75dfcafaa9f9732a184324ad9c6165d8b6ce142a5bad243517936320a0a7c55ec6ccdbc95f539400
@@ -5,6 +5,6 @@
5
5
  inherit_from:
6
6
  - https://raw.githubusercontent.com/riboseinc/oss-guides/master/ci/rubocop.yml
7
7
  AllCops:
8
- TargetRubyVersion: 2.3
8
+ TargetRubyVersion: 2.4
9
9
  Rails:
10
- Enabled: true
10
+ Enabled: false
@@ -38,9 +38,10 @@ module RelatonIso
38
38
 
39
39
  if year.nil?
40
40
  /^(?<code1>[^\s]+(\s\w+)?\s[\d-]+)(:(?<year1>\d{4}))?(?<code2>\s\w+)?/ =~ code
41
+ /:(?<year2>\d{4})/ =~ corr
41
42
  unless code1.nil?
42
43
  code = code1 + code2.to_s
43
- year = year1
44
+ year = year2 || year1
44
45
  end
45
46
  end
46
47
  opts[:all_parts] ||= code !~ %r{^[^\s]+\s\d+-\d+} && opts[:all_parts].nil? && code2.nil?
@@ -145,7 +146,7 @@ module RelatonIso
145
146
  def isobib_results_filter(result, year, opts)
146
147
  missed_years = []
147
148
  hits = result.reduce!([]) do |hts, h|
148
- if !year || %r{:(?<iyear>\d{4})} =~ h.hit["docRef"] && iyear == year
149
+ if !year || %r{:(?<iyear>\d{4})(?!.*:\d{4})} =~ h.hit["docRef"] && iyear == year
149
150
  hts << h
150
151
  else
151
152
  missed_years << iyear
@@ -36,7 +36,7 @@ module RelatonIso
36
36
  }.freeze
37
37
 
38
38
  PUBLISHERS = {
39
- "ISO" => { name: "International Electrotechnical Commission",
39
+ "IEC" => { name: "International Electrotechnical Commission",
40
40
  url: "www.iec.ch" },
41
41
  "ISO" => { name: "International Organization for Standardization",
42
42
  url: "www.iso.org" },
@@ -104,7 +104,7 @@ module RelatonIso
104
104
  d = l[:path] ? get_page(l[:path])[0] : doc
105
105
  unless d.at("//h5[@class='help-block'][.='недоступно на русском языке']")
106
106
  s << l
107
- titles << fetch_title(d, l[:lang])
107
+ titles += fetch_title(d, l[:lang])
108
108
 
109
109
  # Fetch abstracts.
110
110
  abstract_content = d.css("div[itemprop='description'] p").text
@@ -287,12 +287,14 @@ module RelatonIso
287
287
  # Fetch titles.
288
288
  # @param doc [Nokogiri::HTML::Document]
289
289
  # @param lang [String]
290
- # @return [Hash]
290
+ # @return [Array<RelatonBib::TypedTitleString>]
291
291
  def fetch_title(doc, lang)
292
292
  content = doc.at(
293
- "//nav[contains(@class,'eading-condensed')]/h2 | //nav[contains(@class,'eading-condensed')]/h3",
294
- )&.text
295
- RelatonIsoBib::HashConverter.split_title content, lang, script(lang)
293
+ "//nav[contains(@class,'heading-condensed')]/h2 | //nav[contains(@class,'heading-condensed')]/h3",
294
+ )&.text&.gsub(/\u2014/, "-")
295
+ return [] unless content
296
+
297
+ RelatonBib::TypedTitleString.from_string content, lang, script(lang)
296
298
  end
297
299
 
298
300
  # Return ISO script code.
@@ -373,14 +375,14 @@ module RelatonIso
373
375
  # Fetch copyright.
374
376
  # @param ref [String]
375
377
  # @param doc [Nokogiri::HTML::Document]
376
- # @return [Hash]
378
+ # @return [Array<Hash>]
377
379
  def fetch_copyright(ref, doc)
378
380
  owner_name = ref.match(/.*?(?=\s)/).to_s
379
381
  from = ref.match(/(?<=:)\d{4}/).to_s
380
382
  if from.empty?
381
383
  from = doc.xpath("//span[@itemprop='releaseDate']").text.match(/\d{4}/).to_s
382
384
  end
383
- { owner: { name: owner_name }, from: from }
385
+ [{ owner: [{ name: owner_name }], from: from }]
384
386
  end
385
387
  end
386
388
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RelatonIso
4
- VERSION = "1.0.4"
4
+ VERSION = "1.3.0"
5
5
  end
@@ -37,6 +37,6 @@ Gem::Specification.new do |spec|
37
37
  spec.add_development_dependency "vcr"
38
38
  spec.add_development_dependency "webmock"
39
39
 
40
- spec.add_dependency "relaton-iec", ">= 1.0.1"
41
- spec.add_dependency "relaton-iso-bib", ">= 1.0.1"
40
+ spec.add_dependency "relaton-iec", "~> 1.3.0"
41
+ spec.add_dependency "relaton-iso-bib", "~> 1.3.0"
42
42
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-iso
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-05-23 00:00:00.000000000 Z
11
+ date: 2020-08-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: byebug
@@ -154,30 +154,30 @@ dependencies:
154
154
  name: relaton-iec
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - ">="
157
+ - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: 1.0.1
159
+ version: 1.3.0
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
- - - ">="
164
+ - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: 1.0.1
166
+ version: 1.3.0
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: relaton-iso-bib
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
- - - ">="
171
+ - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: 1.0.1
173
+ version: 1.3.0
174
174
  type: :runtime
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
- - - ">="
178
+ - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: 1.0.1
180
+ version: 1.3.0
181
181
  description: 'RelatonIso: retrieve ISO Standards for bibliographic use using the IsoBibliographicItem
182
182
  model'
183
183
  email: