relaton-gb 1.19.0 → 1.20.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 92e9e83e3558899a7705d5e279a1d8458d7a3417ade6b26f4a06835e7ac25005
4
- data.tar.gz: 6b5bfd8af41d5ef1a8ddb3aa96b34787f2bf5372f31a729943bcba3426cb3147
3
+ metadata.gz: 17970eec8510e66fc3597f0f30be04636c3171fdca419e5bd4bd50a1e6e18e3b
4
+ data.tar.gz: 7a9419ed8ab99e67dc4093e228f41df1beb2b90bd6dbc2e04876a0c64014e31e
5
5
  SHA512:
6
- metadata.gz: 0032bd0054227d78ccec76d8ba302a01a11085a15a89e8cf03d609f96088998dde81bdc93981e50a88239e6d1bf78d9d039a6f3118d011c9e4254bf91eb9872f
7
- data.tar.gz: ad973c15f76b194dbd6c9198cc391b3e2d4b2313bce3dfa325bcf5d7f99d1f0a0b3cd7e60bfca7527a6b54ac854206b784b20159128690eccd5d83dcf96e701f
6
+ metadata.gz: 5aa4709578f13f41b2b58c7813c4e0d939faa57ab67a28f9b0eaa93d24190ac0459f5cc0511c5b40a67e602e9527b335ca09a3de50816ca1979192db2e9cefb0
7
+ data.tar.gz: 206fe9818c056380a948fb5b8937d4794b150fbcabab73e27b3feb31842da8adbe9af5ffed5190a57a59b04226d08194c895b1204b38d372a60b09040005885b
@@ -57,7 +57,7 @@ module RelatonGb
57
57
  # @return [String] XML
58
58
  def to_xml(**opts) # rubocop:disable Metrics/AbcSize, Metrics/MethodLength, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
59
59
  super(**opts) do |b|
60
- if opts[:bibdata] && has_ext_attrs?
60
+ if opts[:bibdata] && has_ext?
61
61
  ext = b.ext do
62
62
  doctype&.to_xml b
63
63
  b.horizontal horizontal unless horizontal.nil?
@@ -76,13 +76,17 @@ module RelatonGb
76
76
  # @return [Hash]
77
77
  def to_hash # rubocop:disable Metrics/AbcSize
78
78
  hash = super
79
- hash["ccs"] = single_element_array(ccs) if ccs&.any?
80
- hash["committee"] = committee.to_hash if committee
81
- hash["plannumber"] = gbplannumber if gbplannumber
82
- hash["gbtype"] = gbtype.to_hash
79
+ hash["ext"]["ccs"] = single_element_array(ccs) if ccs&.any?
80
+ hash["ext"]["committee"] = committee.to_hash if committee
81
+ hash["ext"]["plannumber"] = gbplannumber if gbplannumber
82
+ hash["ext"]["gbtype"] = gbtype.to_hash if gbtype
83
83
  hash
84
84
  end
85
85
 
86
+ def has_ext?
87
+ super || ccs&.any? || committee || gbplannumber || gbtype
88
+ end
89
+
86
90
  # @param prefix [String]
87
91
  # @return [String]
88
92
  def to_asciibib(prefix = "")
@@ -128,8 +132,8 @@ module RelatonGb
128
132
  #
129
133
  # @return [Boolean]
130
134
  #
131
- def has_ext_attrs?
132
- super || committee || docsubtype
133
- end
135
+ # def has_ext_attrs?
136
+ # super || committee || docsubtype
137
+ # end
134
138
  end
135
139
  end
@@ -11,6 +11,9 @@ module RelatonGb
11
11
  ret = super
12
12
  return if ret.nil?
13
13
 
14
+ ret[:committee] = ret[:ext][:committee] if ret.dig(:ext, :committee)
15
+ ret[:plannumber] = ret[:ext][:plannumber] if ret.dig(:ext, :plannumber)
16
+ ret[:gbtype] = ret[:ext][:gbtype] if ret.dig(:ext, :gbtype)
14
17
  ccs_hash_to_bib(ret)
15
18
  ret
16
19
  end
@@ -27,8 +30,11 @@ module RelatonGb
27
30
  end
28
31
 
29
32
  def ccs_hash_to_bib(ret)
30
- ret[:ccs] = RelatonBib.array(ret[:ccs]).map do |ccs|
31
- (ccs[:code] && Cnccs.fetch(ccs[:code])) || Cnccs.fetch(ccs)
33
+ ccs = ret.dig(:ext, :ccs) || ret[:ccs] # @TODO: remove ret[:ccs] after all specs are updated
34
+ return unless ccs
35
+
36
+ ret[:ccs] = RelatonBib.array(ccs).map do |item|
37
+ (item[:code] && Cnccs.fetch(item[:code])) || Cnccs.fetch(item)
32
38
  end
33
39
  end
34
40
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RelatonGb
4
- VERSION = "1.19.0"
4
+ VERSION = "1.20.1"
5
5
  end
data/relaton_gb.gemspec CHANGED
@@ -25,8 +25,9 @@ Gem::Specification.new do |spec|
25
25
  spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
26
26
 
27
27
  spec.add_dependency "cnccs", "~> 0.1.1"
28
+ spec.add_dependency "connection_pool", "~> 2.4.0" # @TODO v2.5 has an issue with Windows
28
29
  spec.add_dependency "gb-agencies", "~> 0.0.1"
29
30
  spec.add_dependency "mechanize", "~> 2.10"
30
- spec.add_dependency "relaton-iso-bib", "~> 1.19.0"
31
+ spec.add_dependency "relaton-iso-bib", "~> 1.20.0"
31
32
  spec.add_dependency "csv", "~> 3.0"
32
33
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-gb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.19.0
4
+ version: 1.20.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-07-03 00:00:00.000000000 Z
11
+ date: 2025-04-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cnccs
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 0.1.1
27
+ - !ruby/object:Gem::Dependency
28
+ name: connection_pool
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 2.4.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 2.4.0
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: gb-agencies
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +72,14 @@ dependencies:
58
72
  requirements:
59
73
  - - "~>"
60
74
  - !ruby/object:Gem::Version
61
- version: 1.19.0
75
+ version: 1.20.0
62
76
  type: :runtime
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
80
  - - "~>"
67
81
  - !ruby/object:Gem::Version
68
- version: 1.19.0
82
+ version: 1.20.0
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: csv
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -130,7 +144,7 @@ homepage: https://github.com/metanorma/relaton_gb
130
144
  licenses:
131
145
  - BSD-2-Clause
132
146
  metadata: {}
133
- post_install_message:
147
+ post_install_message:
134
148
  rdoc_options: []
135
149
  require_paths:
136
150
  - lib
@@ -145,8 +159,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
145
159
  - !ruby/object:Gem::Version
146
160
  version: '0'
147
161
  requirements: []
148
- rubygems_version: 3.3.27
149
- signing_key:
162
+ rubygems_version: 3.5.22
163
+ signing_key:
150
164
  specification_version: 4
151
165
  summary: 'RelatonGb: retrieve Chinese GB Standards for bibliographic use using the
152
166
  BibliographicItem model.'