relaton-ietf 1.14.3 → 1.14.5

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: d095dbbd95a78f345ce51149c8fcea964014f3e7aeef7b96ee4021df52900e60
4
- data.tar.gz: f240f8d05275819b620455f743bf4d31d096ca1f0bd4de9c594cd2d163b6fc0e
3
+ metadata.gz: aa4b15e1b13a21f94aa87731fe6d49a83422a426b299ef3fa4378d65dbdf79a2
4
+ data.tar.gz: 6c3e630920810ca3bc881e794e36cd3e9898174eab83ed420fe18d36c8f641ab
5
5
  SHA512:
6
- metadata.gz: fc7e74b30da9eb8c26d1b45e11511b0e2f17ff08eb0354b15e2445515c98d28d985e5582f09cbb2ab966916e872fdafe56b00b0e9a2148c80a1aa9fdc6b8b37e
7
- data.tar.gz: e89482fa9042118c3cdece897e1c976d889986d374a89105aebe41c414cf57d6ad41f7ffb5e4b92bcb9d0f87e3f9ee79cf64b64dcde0ebe50127aa9ad16ad091
6
+ metadata.gz: 0e6cb43373347a061abf880ee44691c7f0f324823290ae5dcb3deb93d5f8754034d34ccf1a2a1c27b2a176c6f7f3d6f6d160c22c53b91a87e939bea653af900a
7
+ data.tar.gz: fd4edf41ff906d5c5fdf3aea055a103e197deaf21d80af892428664abe078196ad49ca5c3521ae741d305c6e1f1eba7b6fd61e15d8aa55ae06d9adb020f926a2
@@ -5,6 +5,7 @@ name: rake
5
5
  on:
6
6
  push:
7
7
  branches: [ master, main ]
8
+ tags: [ v* ]
8
9
  pull_request:
9
10
 
10
11
  jobs:
@@ -10,8 +10,9 @@ on:
10
10
  Next release version. Possible values: x.y.z, major, minor, patch or pre|rc|etc
11
11
  required: true
12
12
  default: 'skip'
13
- push:
14
- tags: [ v* ]
13
+ repository_dispatch:
14
+ types: [ do-release ]
15
+
15
16
 
16
17
  jobs:
17
18
  release:
data/.gitignore CHANGED
@@ -8,6 +8,7 @@
8
8
  /tmp/
9
9
  /bibxml-ids/
10
10
  .vscode/
11
+ /vendor/
11
12
 
12
13
  # rspec failure tracking
13
14
  .rspec_status
data/.rubocop.yml CHANGED
@@ -7,6 +7,6 @@ require: rubocop-rails
7
7
  inherit_from:
8
8
  - https://raw.githubusercontent.com/riboseinc/oss-guides/master/ci/rubocop.yml
9
9
  AllCops:
10
- TargetRubyVersion: 2.5
10
+ TargetRubyVersion: 2.7
11
11
  Rails:
12
12
  Enabled: false
data/Gemfile CHANGED
@@ -1,6 +1,16 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
3
+ git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
4
4
 
5
5
  # Specify your gem's dependencies in relaton_ietf.gemspec
6
6
  gemspec
7
+
8
+ gem "rake", "~> 13.0"
9
+ gem "rspec", "~> 3.0"
10
+
11
+ gem "equivalent-xml"
12
+ gem "pry-byebug"
13
+ gem "ruby-jing"
14
+ gem "simplecov"
15
+ gem "vcr"
16
+ gem "webmock"
@@ -522,7 +522,6 @@
522
522
  <value>tip</value>
523
523
  <value>important</value>
524
524
  <value>caution</value>
525
- <value>statement</value>
526
525
  </choice>
527
526
  </define>
528
527
  <define name="figure">
data/grammars/biblio.rng CHANGED
@@ -216,6 +216,9 @@
216
216
  <optional>
217
217
  <ref name="fullname"/>
218
218
  </optional>
219
+ <zeroOrMore>
220
+ <ref name="credential"/>
221
+ </zeroOrMore>
219
222
  <zeroOrMore>
220
223
  <ref name="affiliation"/>
221
224
  </zeroOrMore>
@@ -232,6 +235,11 @@
232
235
  <ref name="FullNameType"/>
233
236
  </element>
234
237
  </define>
238
+ <define name="credential">
239
+ <element name="credential">
240
+ <text/>
241
+ </element>
242
+ </define>
235
243
  <define name="FullNameType">
236
244
  <choice>
237
245
  <group>
@@ -305,7 +313,9 @@
305
313
  <zeroOrMore>
306
314
  <ref name="affiliationdescription"/>
307
315
  </zeroOrMore>
308
- <ref name="organization"/>
316
+ <optional>
317
+ <ref name="organization"/>
318
+ </optional>
309
319
  </element>
310
320
  </define>
311
321
  <define name="affiliationname">
@@ -1316,7 +1326,7 @@
1316
1326
  <value>commentaryOf</value>
1317
1327
  <value>hasCommentary</value>
1318
1328
  <value>related</value>
1319
- <value>complements</value>
1329
+ <value>hasComplement</value>
1320
1330
  <value>complementOf</value>
1321
1331
  <value>obsoletes</value>
1322
1332
  <value>obsoletedBy</value>
@@ -26,6 +26,9 @@
26
26
  <zeroOrMore>
27
27
  <ref name="area"/>
28
28
  </zeroOrMore>
29
+ <optional>
30
+ <ref name="stream"/>
31
+ </optional>
29
32
  <optional>
30
33
  <ref name="ipr"/>
31
34
  </optional>
@@ -315,4 +318,16 @@
315
318
  </optional>
316
319
  </element>
317
320
  </define>
321
+ <define name="stream">
322
+ <element name="stream">
323
+ <choice>
324
+ <value>IAB</value>
325
+ <value>IETF</value>
326
+ <value>Independent</value>
327
+ <value>IRTF</value>
328
+ <value>Legacy</value>
329
+ <value>Editorial</value>
330
+ </choice>
331
+ </element>
332
+ </define>
318
333
  </grammar>
@@ -16,6 +16,16 @@ module RelatonIetf
16
16
  RelatonIetf::IetfBibliographicItem.new(**attrs)
17
17
  end
18
18
 
19
+ # def docids(reference, ver)
20
+ # ids = super
21
+ # si = reference.at("./seriesInfo[@name='Internet-Draft']",
22
+ # "./front/seriesInfo[@name='Internet-Draft']")
23
+ # if si
24
+ # id = si[:value]
25
+ # end
26
+ # ids
27
+ # end
28
+
19
29
  #
20
30
  # Extract document identifier type form identifier
21
31
  #
@@ -27,7 +37,6 @@ module RelatonIetf
27
37
  type = super
28
38
  case type
29
39
  when "BCP", "FYI", "STD", "RFC" then "RFC"
30
- # when "Internet-Draft" then type
31
40
  when "I-D" then "Internet-Draft"
32
41
  else "IETF"
33
42
  end
@@ -6,6 +6,7 @@ require "relaton_ietf/rfc_entry"
6
6
 
7
7
  module RelatonIetf
8
8
  class DataFetcher
9
+ INDEX1 = "index-v1".freeze
9
10
  #
10
11
  # Data fetcher initializer
11
12
  #
@@ -20,6 +21,7 @@ module RelatonIetf
20
21
  @format = format
21
22
  @ext = @format.sub(/^bib|^rfc/, "")
22
23
  @files = []
24
+ @index = Relaton::Index.find_or_create :IETF, file: "#{INDEX1}.yaml"
23
25
  end
24
26
 
25
27
  #
@@ -49,6 +51,7 @@ module RelatonIetf
49
51
  when "ietf-internet-drafts" then fetch_ieft_internet_drafts
50
52
  when "ietf-rfc-entries" then fetch_ieft_rfcs
51
53
  end
54
+ @index.save
52
55
  end
53
56
 
54
57
  #
@@ -201,6 +204,13 @@ module RelatonIetf
201
204
  @files << file
202
205
  end
203
206
  File.write file, c, encoding: "UTF-8"
207
+ add_to_index entry, file
208
+ end
209
+
210
+ def add_to_index(entry, file)
211
+ docid = entry.docidentifier.detect(&:primary)
212
+ docid ||= entry.docidentifier.first
213
+ @index.add_or_update docid.id, file
204
214
  end
205
215
 
206
216
  #
@@ -1,6 +1,14 @@
1
1
  module RelatonIetf
2
2
  class HashConverter < RelatonBib::HashConverter
3
3
  class << self
4
+ def hash_to_bib(hash)
5
+ ret = super
6
+ return unless ret
7
+
8
+ stream_hash_to_bib ret
9
+ ret
10
+ end
11
+
4
12
  #
5
13
  # Ovverides superclass's method
6
14
  #
@@ -19,6 +27,10 @@ module RelatonIetf
19
27
  end
20
28
  ret[:editorialgroup] = RelatonBib::EditorialGroup.new technical_committee
21
29
  end
30
+
31
+ def stream_hash_to_bib(ret)
32
+ ret[:stream] = ret[:ext][:stream] if ret[:ext]&.key? :stream
33
+ end
22
34
  end
23
35
  end
24
36
  end
@@ -2,18 +2,20 @@ module RelatonIetf
2
2
  class IetfBibliographicItem < RelatonBib::BibliographicItem
3
3
  DOCTYPES = %w[rfc internet-draft].freeze
4
4
 
5
- # @return [String, NilClass]
6
- attr_reader :doctype
5
+ # @return [String, nil]
6
+ attr_reader :doctype, :stream
7
7
 
8
8
  # @return [Array<String>]
9
9
  attr_reader :keyword
10
10
 
11
11
  # @param doctype [String]
12
12
  # @param keyword [Array<String>]
13
+ # @param stream [String, nil]
13
14
  def initialize(**args)
14
15
  if args[:doctype] && !DOCTYPES.include?(args[:doctype])
15
16
  warn "[relaton-ietf] WARNING: invalid doctype #{args[:doctype]}"
16
17
  end
18
+ @stream = args.delete(:stream)
17
19
  super
18
20
  end
19
21
 
@@ -36,12 +38,39 @@ module RelatonIetf
36
38
  # @param opts [Hash]
37
39
  # @option opts [Nokogiri::XML::Builder] :builder XML builder
38
40
  # @option opts [Boolean] :bibdata
39
- # @option opts [Symbol, NilClass] :date_format (:short), :full
41
+ # @option opts [Symbol, nil] :date_format (:short), :full
40
42
  # @option opts [String, Symbol] :lang language
41
43
  # @return [String] XML
42
- def to_xml(**opts)
44
+ def to_xml(**opts) # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity, Metrics/MethodLength
43
45
  opts[:date_format] ||= :short
44
- super(**opts)
46
+ super(**opts) do |builder|
47
+ if opts[:bibdata] && (doctype || editorialgroup || ics&.any? ||
48
+ structuredidentifier&.presence? || stream)
49
+ ext = builder.ext do |b|
50
+ b.doctype doctype if doctype
51
+ b.subdoctype subdoctype if subdoctype
52
+ editorialgroup&.to_xml b
53
+ ics.each { |i| i.to_xml b }
54
+ b.stream stream if stream
55
+ structuredidentifier&.to_xml b
56
+ end
57
+ ext["schema-version"] = ext_schema if !opts[:embedded] && respond_to?(:ext_schema)
58
+ end
59
+ end
60
+ end
61
+
62
+ #
63
+ # Render hash
64
+ #
65
+ # @return [Hash] docunent hash representation
66
+ #
67
+ def to_hash(embedded: false)
68
+ hash = super
69
+ return hash unless stream
70
+
71
+ hash["ext"] ||= {}
72
+ hash["ext"]["stream"] = stream
73
+ hash
45
74
  end
46
75
 
47
76
  #
@@ -48,5 +48,14 @@ module RelatonIetf
48
48
  def grammar_hash
49
49
  @grammar_hash ||= ::RelatonIetf.grammar_hash
50
50
  end
51
+
52
+ #
53
+ # Remove index file
54
+ #
55
+ def remove_index_file
56
+ Relaton::Index.find_or_create(:RFC, url: true, file: Scrapper::INDEX_FILE).remove_file
57
+ Relaton::Index.find_or_create(:RSS, url: true, file: Scrapper::INDEX_FILE).remove_file
58
+ Relaton::Index.find_or_create(:IDS, url: true, file: Scrapper::INDEX_FILE).remove_file
59
+ end
51
60
  end
52
61
  end
@@ -41,6 +41,7 @@ module RelatonIetf
41
41
  relation: parse_relation,
42
42
  status: parse_status,
43
43
  series: parse_series,
44
+ stream: @doc.at("./xmlns:stream")&.text,
44
45
  editorialgroup: parse_editorialgroup,
45
46
  )
46
47
  end
@@ -52,7 +53,7 @@ module RelatonIetf
52
53
  #
53
54
  def parse_series
54
55
  title = RelatonBib::TypedTitleString.new(content: "RFC")
55
- series_is_also + seires_stream + [RelatonBib::Series.new(title: title, number: docnum)]
56
+ series_is_also + [RelatonBib::Series.new(title: title, number: docnum)] + seires_stream
56
57
  end
57
58
 
58
59
  def series_is_also
@@ -127,14 +128,14 @@ module RelatonIetf
127
128
  #
128
129
  # @return [String] anchor
129
130
  #
130
- def anchor
131
- "RFC#{docnum}"
132
- end
131
+ # def anchor
132
+ # "RFC#{docnum}"
133
+ # end
133
134
 
134
135
  #
135
136
  # Create link
136
137
  #
137
- # @return [Array<RelatonBib::TypedUri>]
138
+ # @return [Array<RelatonBib::TypedUri>]
138
139
  #
139
140
  def parse_link
140
141
  url = "https://www.rfc-editor.org/info/rfc#{docnum}"
@@ -10,7 +10,7 @@ module RelatonIetf
10
10
  def initialize(doc, doc_id, is_also)
11
11
  @doc = doc
12
12
  @name = doc.name.split("-").first
13
- @shortnum = doc_id[-4..-1].sub(/^0+/, "")
13
+ @shortnum = doc_id[-4..].sub(/^0+/, "")
14
14
  @doc_id = doc_id
15
15
  @is_also = is_also
16
16
  end
@@ -47,6 +47,7 @@ module RelatonIetf
47
47
  formattedref: formattedref,
48
48
  relation: parse_relation,
49
49
  series: parse_series,
50
+ stream: @doc.at("./xmlns:stream")&.text,
50
51
  )
51
52
  end
52
53
 
@@ -5,16 +5,17 @@ module RelatonIetf
5
5
  module Scrapper
6
6
  extend Scrapper
7
7
 
8
- IDS = "https://raw.githubusercontent.com/relaton/relaton-data-ids/main/data/"
9
- RFC = "https://raw.githubusercontent.com/relaton/relaton-data-rfcs/main/data/"
10
- RSS = "https://raw.githubusercontent.com/relaton/relaton-data-rfcsubseries/main/data/"
8
+ IDS = "https://raw.githubusercontent.com/relaton/relaton-data-ids/main/"
9
+ RFC = "https://raw.githubusercontent.com/relaton/relaton-data-rfcs/main/"
10
+ RSS = "https://raw.githubusercontent.com/relaton/relaton-data-rfcsubseries/main/"
11
+ INDEX_FILE = "index-v1.yaml"
11
12
 
12
13
  # @param text [String]
13
14
  # @return [RelatonIetf::IetfBibliographicItem]
14
15
  def scrape_page(text)
15
16
  # Remove initial "IETF " string if specified
16
17
  ref = text.gsub(/^IETF /, "")
17
- ref.sub!(/(?<=^(?:RFC|BCP|FYI|STD))\s(\d+)/) { $1.rjust 4, "0" }
18
+ # ref.sub!(/(?<=^(?:RFC|BCP|FYI|STD))\s(\d+)/) { $1.rjust 4, "0" }
18
19
  rfc_item ref
19
20
  rescue Timeout::Error, Errno::EINVAL, Errno::ECONNRESET, EOFError,
20
21
  Net::HTTPBadResponse, Net::HTTPHeaderSyntaxError,
@@ -27,32 +28,42 @@ module RelatonIetf
27
28
  # @param ref [String]
28
29
  # @return [RelatonIetf::IetfBibliographicItem]
29
30
  def rfc_item(ref) # rubocop:disable Metrics/MethodLength
30
- ghurl = case ref
31
- when /^RFC/ then RFC
32
- when /^(?:BCP|FYI|STD)/ then RSS
33
- when /^I-D/
34
- ref.sub!(/^I-D[.\s]/, "")
35
- IDS
36
- else return
37
- end
38
-
39
- uri = "#{ghurl}#{ref.sub(/\s|\u00a0/, '.')}.yaml"
40
- # BibXMLParser.parse get_page(uri), is_relation: is_relation, ver: ver
41
- resp = get_page uri
42
- return unless resp
43
-
44
- hash = YAML.safe_load resp
45
- hash["fetched"] = Date.today.to_s
46
- IetfBibliographicItem.from_hash hash
31
+ case ref
32
+ when /^RFC/ then get_rfcs ref
33
+ when /^(?:BCP|FYI|STD)/ then get_rfcsubseries ref
34
+ when /^I-D/
35
+ ref.sub!(/^I-D[.\s]/, "")
36
+ get_ids ref
37
+ end
38
+ end
39
+
40
+ def get_rfcs(ref)
41
+ index = Relaton::Index.find_or_create :RFC, url: "#{RFC}index-v1.zip", file: INDEX_FILE
42
+ row = index.search(ref).first
43
+ get_page "#{RFC}#{row[:file]}" if row
44
+ end
45
+
46
+ def get_rfcsubseries(ref)
47
+ index = Relaton::Index.find_or_create :RSS, url: "#{RSS}index-v1.zip", file: INDEX_FILE
48
+ row = index.search(ref).first
49
+ get_page "#{RSS}#{row[:file]}" if row
50
+ end
51
+
52
+ def get_ids(ref)
53
+ index = Relaton::Index.find_or_create :IDS, url: "#{IDS}index-v1.zip", file: INDEX_FILE
54
+ row = index.search(ref).first
55
+ get_page "#{IDS}#{row[:file]}" if row
47
56
  end
48
57
 
49
58
  # @param uri [String]
50
- # @return [String] HTTP response body
59
+ # @return [RelatonIetf::IetfBibliographicItem, nil] HTTP response body
51
60
  def get_page(uri)
52
61
  res = Net::HTTP.get_response(URI(uri))
53
62
  return unless res.code == "200"
54
63
 
55
- res.body
64
+ hash = YAML.safe_load res.body
65
+ hash["fetched"] = Date.today.to_s
66
+ IetfBibliographicItem.from_hash hash
56
67
  end
57
68
  end
58
69
  end
@@ -1,3 +1,3 @@
1
1
  module RelatonIetf
2
- VERSION = "1.14.3".freeze
2
+ VERSION = "1.14.5".freeze
3
3
  end
@@ -5,6 +5,12 @@ module RelatonIetf
5
5
  class << self
6
6
  private
7
7
 
8
+ def item_data(doc)
9
+ data = super
10
+ data[:stream] = doc.at("ext/stream")&.text
11
+ data
12
+ end
13
+
8
14
  # override RelatonBib::BibliographicItem.bib_item method
9
15
  # @param item_hash [Hash]
10
16
  # @return [RelatonIetf::IetfBibliographicItem]
data/lib/relaton_ietf.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "net/http"
4
+ require "relaton/index"
4
5
  require "relaton_bib"
5
6
  require "relaton_ietf/version"
6
7
  require "relaton_ietf/bibxml_parser"
data/relaton_ietf.gemspec CHANGED
@@ -10,10 +10,10 @@ Gem::Specification.new do |spec|
10
10
  spec.authors = ["Ribose Inc."]
11
11
  spec.email = ["open.source@ribose.com"]
12
12
 
13
- spec.summary = "RelatonIetf: retrieve IETF Standards for bibliographic use "\
14
- "using the BibliographicItem model"
13
+ spec.summary = "RelatonIetf: retrieve IETF Standards for " \
14
+ "bibliographic use using the BibliographicItem model"
15
15
  spec.description = <<~DESCRIPTION
16
- RelatonIetf: retrieve IETF Standards for bibliographic use
16
+ RelatonIetf: retrieve IETF Standards for bibliographic use
17
17
  using the BibliographicItem model.
18
18
 
19
19
  Formerly known as rfcbib.
@@ -27,16 +27,8 @@ Gem::Specification.new do |spec|
27
27
  spec.bindir = "exe"
28
28
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
29
29
  spec.require_paths = ["lib"]
30
- spec.required_ruby_version = Gem::Requirement.new(">= 2.5.0")
31
-
32
- spec.add_development_dependency "equivalent-xml", "~> 0.6"
33
- spec.add_development_dependency "pry-byebug"
34
- spec.add_development_dependency "rake", "~> 13.0"
35
- spec.add_development_dependency "rspec", "~> 3.0"
36
- spec.add_development_dependency "ruby-jing"
37
- spec.add_development_dependency "simplecov"
38
- spec.add_development_dependency "vcr"
39
- spec.add_development_dependency "webmock"
30
+ spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
40
31
 
41
32
  spec.add_dependency "relaton-bib", "~> 1.14.0"
33
+ spec.add_dependency "relaton-index", "~> 0.2.3"
42
34
  end
metadata CHANGED
@@ -1,143 +1,48 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-ietf
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.14.3
4
+ version: 1.14.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: 2023-03-09 00:00:00.000000000 Z
11
+ date: 2023-07-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: equivalent-xml
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '0.6'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '0.6'
27
- - !ruby/object:Gem::Dependency
28
- name: pry-byebug
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: rake
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '13.0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '13.0'
55
- - !ruby/object:Gem::Dependency
56
- name: rspec
14
+ name: relaton-bib
57
15
  requirement: !ruby/object:Gem::Requirement
58
16
  requirements:
59
17
  - - "~>"
60
18
  - !ruby/object:Gem::Version
61
- version: '3.0'
62
- type: :development
19
+ version: 1.14.0
20
+ type: :runtime
63
21
  prerelease: false
64
22
  version_requirements: !ruby/object:Gem::Requirement
65
23
  requirements:
66
24
  - - "~>"
67
25
  - !ruby/object:Gem::Version
68
- version: '3.0'
69
- - !ruby/object:Gem::Dependency
70
- name: ruby-jing
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: simplecov
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: vcr
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
- - !ruby/object:Gem::Dependency
112
- name: webmock
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
26
+ version: 1.14.0
125
27
  - !ruby/object:Gem::Dependency
126
- name: relaton-bib
28
+ name: relaton-index
127
29
  requirement: !ruby/object:Gem::Requirement
128
30
  requirements:
129
31
  - - "~>"
130
32
  - !ruby/object:Gem::Version
131
- version: 1.14.0
33
+ version: 0.2.3
132
34
  type: :runtime
133
35
  prerelease: false
134
36
  version_requirements: !ruby/object:Gem::Requirement
135
37
  requirements:
136
38
  - - "~>"
137
39
  - !ruby/object:Gem::Version
138
- version: 1.14.0
139
- description: "RelatonIetf: retrieve IETF Standards for bibliographic use \nusing the
140
- BibliographicItem model.\n\nFormerly known as rfcbib.\n"
40
+ version: 0.2.3
41
+ description: |
42
+ RelatonIetf: retrieve IETF Standards for bibliographic use
43
+ using the BibliographicItem model.
44
+
45
+ Formerly known as rfcbib.
141
46
  email:
142
47
  - open.source@ribose.com
143
48
  executables: []
@@ -190,14 +95,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
190
95
  requirements:
191
96
  - - ">="
192
97
  - !ruby/object:Gem::Version
193
- version: 2.5.0
98
+ version: 2.7.0
194
99
  required_rubygems_version: !ruby/object:Gem::Requirement
195
100
  requirements:
196
101
  - - ">="
197
102
  - !ruby/object:Gem::Version
198
103
  version: '0'
199
104
  requirements: []
200
- rubygems_version: 3.1.6
105
+ rubygems_version: 3.3.26
201
106
  signing_key:
202
107
  specification_version: 4
203
108
  summary: 'RelatonIetf: retrieve IETF Standards for bibliographic use using the BibliographicItem