metanorma-ietf 1.0.10 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/macos.yml +3 -2
  3. data/.github/workflows/ubuntu.yml +3 -2
  4. data/.github/workflows/windows.yml +4 -3
  5. data/README.adoc +9 -0
  6. data/lib/asciidoctor/ietf/basicdoc.rng +1045 -0
  7. data/lib/asciidoctor/ietf/biblio.rng +1142 -0
  8. data/lib/asciidoctor/ietf/blocks.rb +76 -0
  9. data/lib/asciidoctor/ietf/converter.rb +211 -0
  10. data/lib/asciidoctor/ietf/front.rb +143 -0
  11. data/lib/asciidoctor/ietf/ietf.rng +882 -0
  12. data/lib/asciidoctor/ietf/isodoc.rng +514 -0
  13. data/lib/asciidoctor/ietf/isostandard.rng +860 -0
  14. data/lib/asciidoctor/ietf/reqt.rng +171 -0
  15. data/lib/asciidoctor/ietf/validate.rb +84 -0
  16. data/lib/isodoc/ietf/blocks.rb +215 -0
  17. data/lib/isodoc/ietf/cleanup.rb +220 -0
  18. data/lib/isodoc/ietf/footnotes.rb +70 -0
  19. data/lib/isodoc/ietf/front.rb +232 -0
  20. data/lib/isodoc/ietf/inline.rb +136 -0
  21. data/lib/isodoc/ietf/metadata.rb +62 -0
  22. data/lib/isodoc/ietf/references.rb +129 -0
  23. data/lib/isodoc/ietf/reqt.rb +74 -0
  24. data/lib/isodoc/ietf/rfc_convert.rb +60 -0
  25. data/lib/isodoc/ietf/section.rb +162 -0
  26. data/lib/isodoc/ietf/table.rb +43 -0
  27. data/lib/isodoc/ietf/terms.rb +65 -0
  28. data/lib/metanorma-ietf.rb +2 -1
  29. data/lib/metanorma/ietf/processor.rb +16 -37
  30. data/lib/metanorma/ietf/version.rb +1 -1
  31. data/metanorma-ietf.gemspec +3 -3
  32. metadata +36 -36
  33. data/Gemfile.lock +0 -327
  34. data/lib/asciidoctor/rfc.rb +0 -8
  35. data/lib/asciidoctor/rfc/common/base.rb +0 -544
  36. data/lib/asciidoctor/rfc/common/front.rb +0 -120
  37. data/lib/asciidoctor/rfc/common/validate.rb +0 -31
  38. data/lib/asciidoctor/rfc/v2/base.rb +0 -380
  39. data/lib/asciidoctor/rfc/v2/blocks.rb +0 -299
  40. data/lib/asciidoctor/rfc/v2/converter.rb +0 -60
  41. data/lib/asciidoctor/rfc/v2/front.rb +0 -69
  42. data/lib/asciidoctor/rfc/v2/inline_anchor.rb +0 -111
  43. data/lib/asciidoctor/rfc/v2/lists.rb +0 -135
  44. data/lib/asciidoctor/rfc/v2/table.rb +0 -116
  45. data/lib/asciidoctor/rfc/v2/validate.rng +0 -716
  46. data/lib/asciidoctor/rfc/v3/base.rb +0 -330
  47. data/lib/asciidoctor/rfc/v3/blocks.rb +0 -246
  48. data/lib/asciidoctor/rfc/v3/converter.rb +0 -62
  49. data/lib/asciidoctor/rfc/v3/front.rb +0 -122
  50. data/lib/asciidoctor/rfc/v3/inline_anchor.rb +0 -89
  51. data/lib/asciidoctor/rfc/v3/lists.rb +0 -176
  52. data/lib/asciidoctor/rfc/v3/svg.rng +0 -9081
  53. data/lib/asciidoctor/rfc/v3/table.rb +0 -65
  54. data/lib/asciidoctor/rfc/v3/validate.rng +0 -2143
@@ -0,0 +1,162 @@
1
+ module IsoDoc::Ietf
2
+ class RfcConvert < ::IsoDoc::Convert
3
+ def common_rfc_pis(node)
4
+ rfc_pis = {
5
+ artworkdelimiter: node&.at(ns("//pi/artworkdelimiter"))&.text,
6
+ artworklines: node&.at(ns("//pi/artworklines"))&.text,
7
+ authorship: node&.at(ns("//pi/authorship"))&.text,
8
+ autobreaks: node&.at(ns("//pi/autobreaks"))&.text,
9
+ background: node&.at(ns("//pi/background"))&.text,
10
+ colonspace: node&.at(ns("//pi/colonspace"))&.text,
11
+ comments: node&.at(ns("//pi/comments"))&.text,
12
+ docmapping: node&.at(ns("//pi/docmapping"))&.text,
13
+ editing: node&.at(ns("//pi/editing"))&.text,
14
+ emoticonic: node&.at(ns("//pi/emoticonic"))&.text,
15
+ footer: node&.at(ns("//pi/footer"))&.text,
16
+ header: node&.at(ns("//pi/header"))&.text,
17
+ inline: node&.at(ns("//pi/inline"))&.text,
18
+ iprnotified: node&.at(ns("//pi/iprnotified"))&.text,
19
+ linkmailto: node&.at(ns("//pi/linkmailto"))&.text,
20
+ linefile: node&.at(ns("//pi/linefile"))&.text,
21
+ notedraftinprogress: node&.at(ns("//pi/notedraftinprogress"))&.text,
22
+ private: node&.at(ns("//pi/private"))&.text,
23
+ refparent: node&.at(ns("//pi/refparent"))&.text,
24
+ rfcedstyle: node&.at(ns("//pi/rfcedstyle"))&.text,
25
+ slides: node&.at(ns("//pi/slides"))&.text,
26
+ "text-list-symbols": node&.at(ns("//pi/text-list-symbols"))&.text,
27
+ tocappendix: node&.at(ns("//pi/tocappendix"))&.text,
28
+ tocindent: node&.at(ns("//pi/tocindent"))&.text,
29
+ tocnarrow: node&.at(ns("//pi/tocnarrow"))&.text,
30
+ tocompact: node&.at(ns("//pi/tocompact"))&.text,
31
+ topblock: node&.at(ns("//pi/topblock"))&.text,
32
+ useobject: node&.at(ns("//pi/useobject"))&.text,
33
+ strict: node&.at(ns("//pi/strict"))&.text || "yes",
34
+ compact: node&.at(ns("//pi/compact"))&.text || "yes",
35
+ subcompact: node&.at(ns("//pi/subcompact"))&.text || "no",
36
+ toc: node&.at(ns("//pi/toc-include"))&.text,
37
+ tocdepth: node&.at(ns("//pi/toc-depth"))&.text || "4",
38
+ symrefs: node&.at(ns("//pi/sym-refs"))&.text || "yes",
39
+ sortrefs: node&.at(ns("//pi/sort-refs"))&.text || "yes",
40
+ }
41
+ attr_code(rfc_pis)
42
+ end
43
+
44
+ def set_pis(node, doc)
45
+ rfc_pis = common_rfc_pis(node)
46
+ rfc_pis.each_pair do |k, v|
47
+ pi = Nokogiri::XML::ProcessingInstruction.new(doc, "rfc",
48
+ "#{k}=\"#{v}\"")
49
+ doc.root.add_previous_sibling(pi)
50
+ end
51
+ doc.to_xml
52
+ end
53
+
54
+ def rfc_attributes(docxml)
55
+ t = Time.now.getutc
56
+ obs = xpath_comma(docxml.xpath(ns(
57
+ "//bibdata/relation[@type = 'obsoletes']/bibitem/docidentifier")))
58
+ upd = xpath_comma(docxml.xpath(ns(
59
+ "//bibdata/relation[@type = 'updates']/bibitem/docidentifier")))
60
+ {
61
+ docName: @meta.get[:doctype] == "Internet Draft" ? @meta.get[:docnumber] : nil,
62
+ number: @meta.get[:doctype].casecmp?("rfc") ? @meta.get[:docnumber] : nil,
63
+ category: docxml&.at(ns("//bibdata/series[@type = 'intended']/title"))&.text || "std",
64
+ ipr: docxml&.at(ns("//bibdata/ext/ipr"))&.text,
65
+ obsoletes: obs,
66
+ updates: upd,
67
+ indexInclude: docxml&.at(ns("//bibdata/ext/indexInclude"))&.text,
68
+ iprExtract: docxml&.at(ns("//bibdata/ext/iprExtract"))&.text,
69
+ sortRefs: docxml&.at(ns("//bibdata/ext/sortRefs"))&.text,
70
+ symRefs: docxml&.at(ns("//bibdata/ext/symRefs"))&.text,
71
+ tocInclude: docxml&.at(ns("//bibdata/ext/tocInclude"))&.text,
72
+ tocDepth: docxml&.at(ns("//bibdata/ext/tocDepth"))&.text,
73
+ submissionType: docxml&.at(ns(
74
+ "//bibdata/series[@type = 'stream']/title"))&.text || "IETF",
75
+ 'xml:lang': docxml&.at(ns("//bibdata/language"))&.text,
76
+ version: "3",
77
+ 'xmlns:xi': "http://www.w3.org/2001/XInclude",
78
+ prepTime: sprintf("%04d-%02d-%02dT%02d:%02d:%02dZ",
79
+ t.year, t.month, t.day, t.hour, t.min, t.sec),
80
+ }
81
+ end
82
+
83
+ def xpath_comma(xpath)
84
+ return nil if xpath.empty?
85
+ xpath.map { |x| x.text }.join(", ")
86
+ end
87
+
88
+ def make_link(out, isoxml)
89
+ links = isoxml.xpath(ns(
90
+ "//bibdata/relation[@type = 'includedIn' or @type = 'describedBy' or "\
91
+ "@type = 'derivedFrom' or @type = 'equivalent']")) || return
92
+ links.each do |l|
93
+ out.link **{ href: l&.at(ns("./bibitem/docidentifier"))&.text,
94
+ rel: rel2iana(l["type"]) }
95
+ end
96
+ end
97
+
98
+ def rel2iana(type)
99
+ case type
100
+ when "includedIn" then "item"
101
+ when "describedBy" then "describedby"
102
+ when "derivedFrom" then "convertedfrom"
103
+ when "equivalent" then "alternate"
104
+ else
105
+ "alternate"
106
+ end
107
+ end
108
+
109
+ def make_middle(out, isoxml)
110
+ out.middle do |middle|
111
+ clause isoxml, middle
112
+ end
113
+ end
114
+
115
+ def make_back(out, isoxml)
116
+ out.back do |back|
117
+ annex isoxml, back
118
+ bibliography isoxml, back
119
+ end
120
+ end
121
+
122
+ def clause_parse_title(node, div, c1, out)
123
+ return unless c1
124
+ div.name do |n|
125
+ c1&.children&.each { |c2| parse(c2, n) }
126
+ end
127
+ end
128
+
129
+ def clause_parse(node, out)
130
+ out.section **attr_code( anchor: node["id"], numbered: node["numbered"],
131
+ removeInRFC: node["removeInRFC"], toc: node["toc"]) do |div|
132
+ clause_parse_title(node, div, node.at(ns("./title")), out)
133
+ node.children.reject { |c1| c1.name == "title" }.each do |c1|
134
+ parse(c1, div)
135
+ end
136
+ end
137
+ end
138
+
139
+ def clause(isoxml, out)
140
+ isoxml.xpath("//xmlns:preface/child::*[not(name() = 'abstract' or name() = 'foreword')] "\
141
+ "| //xmlns:sections/child::*").each do |c|
142
+ clause1(c, out)
143
+ end
144
+ end
145
+
146
+ def clause1(c, out)
147
+ out.section **attr_code( anchor: c["id"], numbered: c["numbered"],
148
+ removeInRFC: c["removeInRFC"], toc: c["toc"]) do |div|
149
+ clause_parse_title(c, div, c.at(ns("./title")), out)
150
+ c.elements.reject { |c1| c1.name == "title" }.each do |c1|
151
+ parse(c1, div)
152
+ end
153
+ end
154
+ end
155
+
156
+ def annex(isoxml, out)
157
+ isoxml.xpath(ns("//annex")).each do |c|
158
+ clause1(c, out)
159
+ end
160
+ end
161
+ end
162
+ end
@@ -0,0 +1,43 @@
1
+ module IsoDoc::Ietf
2
+ class RfcConvert < ::IsoDoc::Convert
3
+ def make_table_attr(node)
4
+ attr_code(anchor: node["id"], align: node["align"])
5
+ end
6
+
7
+ def table_parse(node, out)
8
+ @in_table = true
9
+ out.table **make_table_attr(node) do |t|
10
+ table_title_parse(node, out)
11
+ thead_parse(node, t)
12
+ tbody_parse(node, t)
13
+ tfoot_parse(node, t)
14
+ end
15
+ (dl = node.at(ns("./dl"))) && parse(dl, out)
16
+ node.xpath(ns("./note")).each { |n| parse(n, out) }
17
+ @in_table = false
18
+ end
19
+
20
+ def table_title_parse(node, out)
21
+ name = node.at(ns("./name")) || return
22
+ out.name do |p|
23
+ name.children.each { |n| parse(n, p) }
24
+ end
25
+ end
26
+
27
+ def tr_parse(node, out, ord, totalrows, header)
28
+ out.tr do |r|
29
+ node.elements.each do |td|
30
+ attrs = make_tr_attr(td, ord, totalrows - 1, header)
31
+ r.send td.name, **attrs do |entry|
32
+ td.children.each { |n| parse(n, entry) }
33
+ end
34
+ end
35
+ end
36
+ end
37
+
38
+ def make_tr_attr(td, row, totalrows, header)
39
+ attr_code(rowspan: td["rowspan"], colspan: td["colspan"],
40
+ align: td["align"] )
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,65 @@
1
+ module IsoDoc::Ietf
2
+ class RfcConvert < ::IsoDoc::Convert
3
+
4
+ def definition_parse(node, out)
5
+ node.children.each { |n| parse(n, out) }
6
+ end
7
+
8
+ def modification_parse(node, out)
9
+ para = node.at(ns("./p"))
10
+ out << " -- "
11
+ para.children.each { |n| parse(n, out) }
12
+ end
13
+
14
+ def deprecated_term_parse(node, out)
15
+ out.t do |p|
16
+ p << l10n("#{@deprecated_lbl}: ")
17
+ node.children.each { |c| parse(c, p) }
18
+ end
19
+ end
20
+
21
+ def admitted_term_parse(node, out)
22
+ out.t do |p|
23
+ node.children.each { |c| parse(c, p) }
24
+ end
25
+ end
26
+
27
+ def term_parse(node, out)
28
+ out.name do |p|
29
+ node.children.each { |n| parse(n, p) }
30
+ end
31
+ end
32
+
33
+ def termnote_parse(node, out)
34
+ note_parse(node, out)
35
+ end
36
+
37
+ def termref_parse(node, out)
38
+ out.t do |p|
39
+ p << "SOURCE: "
40
+ node.children.each { |n| parse(n, p) }
41
+ end
42
+ end
43
+
44
+ def termdef_parse(node, out)
45
+ set_termdomain("")
46
+ clause_parse(node, out)
47
+ end
48
+
49
+ def termdocsource_parse(_node, _out)
50
+ end
51
+
52
+ def termnote_anchor_names(docxml)
53
+ docxml.xpath(ns("//term[descendant::termnote]")).each do |t|
54
+ c = Counter.new
55
+ notes = t.xpath(ns(".//termnote"))
56
+ notes.each do |n|
57
+ next if n["id"].nil? || n["id"].empty?
58
+ idx = notes.size == 1 ? "" : " #{c.increment(n).print}"
59
+ @anchors[n["id"]] =
60
+ anchor_struct(idx, n, @note_xref_lbl, "note", false)
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
@@ -2,6 +2,7 @@ require "asciidoctor" unless defined? Asciidoctor::Converter
2
2
  require "metanorma"
3
3
 
4
4
  require_relative "metanorma/ietf"
5
- require_relative "asciidoctor/rfc"
5
+ require_relative "asciidoctor/ietf/converter"
6
+ require_relative "isodoc/ietf/rfc_convert"
6
7
 
7
8
  Metanorma::Registry.instance.register(Metanorma::Ietf::Processor)
@@ -8,13 +8,13 @@ module Metanorma
8
8
  def initialize
9
9
  @short = :ietf
10
10
  @input_format = :asciidoc
11
- @asciidoctor_backend = :rfc2
11
+ @asciidoctor_backend = :ietf
12
12
  end
13
13
 
14
14
  def output_formats
15
15
  {
16
- xmlrfc2: "xml",
17
- xmlrfc3: "v3.xml",
16
+ xml: "xml",
17
+ rfc: "rfc.xml",
18
18
  html: "html",
19
19
  txt: "txt"
20
20
  }
@@ -25,15 +25,10 @@ module Metanorma
25
25
  end
26
26
 
27
27
  def input_to_isodoc(file, filename)
28
- # TODO: storing these two variables for xmlrfc2. Remove when we have IsoDoc
29
- @file = file
30
- @filename = filename
31
-
32
28
  # This is XML RFC v3 output in text
33
29
  Metanorma::Input::Asciidoc.new.process(file, filename, @asciidoctor_backend)
34
30
  end
35
31
 
36
- # TODO: we're not yet using IsoDoc here
37
32
  def extract_options(isodocxml)
38
33
  {}
39
34
  end
@@ -43,48 +38,32 @@ module Metanorma
43
38
  def which(cmd)
44
39
  exts = ENV['PATHEXT'] ? ENV['PATHEXT'].split(';') : ['']
45
40
  ENV['PATH'].split(File::PATH_SEPARATOR).each do |path|
46
- exts.each { |ext|
41
+ exts.each do |ext|
47
42
  exe = File.join(path, "#{cmd}#{ext}")
48
43
  return exe if File.executable?(exe) && !File.directory?(exe)
49
- }
44
+ end
50
45
  end
51
46
  nil
52
47
  end
53
48
 
54
49
  def output(isodoc_node, outname, format, options={})
55
50
  case format
56
- when :xmlrfc2
57
- # TODO: we're using XML RFC v2 as the central format because our processor
58
- # is not updated to the new schema
59
-
60
- # xmlrfcdoc = Metanorma::Input::Asciidoc.new.process(@file, @filename, :rfc2)
61
- # File.open(outname, 'w') { |f| f << xmlrfcdoc }
62
-
63
- # TODO: When we have IsoDoc, we just translate IsoDoc to XML RFC v2
64
- File.open(outname, 'w') { |f| f << isodoc_node }
65
- when :xmlrfc3
66
- # TODO: When we have IsoDoc, we just translate IsoDoc to XML RFC v3
67
- xmlrfcdoc = Metanorma::Input::Asciidoc.new.process(@file, @filename, :rfc3)
68
- File.open(outname, 'w') { |f| f << xmlrfcdoc }
51
+ when :rfc
52
+ IsoDoc::Ietf::RfcConvert.new(options).convert(outname, isodoc_node)
53
+ @done_rfc = true
69
54
 
70
55
  when :txt, :html
71
- warn outname
72
- Tempfile.open(File.basename(outname)) do |f|
73
- f << isodoc_node
74
-
75
- unless which("xml2rfc")
76
- warn "[metanorma-ietf] Error: unable to generate #{format}, the command `xml2rfc` is not found in path."
77
- return
78
- end
79
-
80
- # In xml2rfc, --text and --html are used
81
- format = :text if format == :txt
82
- # puts "xml2rfc --#{format} #{f.path} -o #{outname}"
83
- system("xml2rfc --#{format} #{f.path} -o #{outname}")
56
+ rfcname = outname.sub(/\.(html|txt)$/, ".rfc.xml")
57
+ output(isodoc_node, outname, :rfc, options) unless @done_rfc
58
+ unless which("xml2rfc")
59
+ warn "[metanorma-ietf] Error: unable to generate #{format}, the command `xml2rfc` is not found in path."
60
+ return
84
61
  end
62
+ # In xml2rfc, --text and --html are used
63
+ format = :text if format == :txt
64
+ system("xml2rfc --#{format} #{rfcname} -o #{outname}")
85
65
  end
86
66
  end
87
-
88
67
  end
89
68
  end
90
69
  end
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Ietf
3
- VERSION = "1.0.10".freeze
3
+ VERSION = "2.0.0".freeze
4
4
  end
5
5
  end
@@ -15,7 +15,7 @@ Gem::Specification.new do |spec|
15
15
  metanorma-ietf lets you write IETF documents, such as Internet-Drafts and RFCs,
16
16
  in native AsciiDoc syntax. This is part of the Metanorma publishing framework.
17
17
 
18
- RFC XML ("xml2rfc" Vocabulary XML, RFC7322) is the XML-based language used for
18
+ RFC XML ("xml2rfc" Vocabulary XML, RFC 7991) is the XML-based language used for
19
19
  writing Internet-Drafts and RFCs, but not everyone likes hand-crafting XML,
20
20
  especially when the focus should be on the content.
21
21
 
@@ -37,9 +37,9 @@ Gem::Specification.new do |spec|
37
37
 
38
38
  spec.add_dependency "metanorma-standoc", "~> 1.3.0"
39
39
  spec.add_dependency "isodoc", "~> 1.0.0"
40
+ spec.add_dependency "mathml2asciimath"
40
41
 
41
- spec.add_development_dependency "bundler", "~> 2.0.1"
42
- spec.add_development_dependency "byebug", "~> 9.1"
42
+ spec.add_development_dependency "byebug"
43
43
  spec.add_development_dependency "equivalent-xml", "~> 0.6"
44
44
  spec.add_development_dependency "guard", "~> 2.14"
45
45
  spec.add_development_dependency "guard-rspec", "~> 4.7"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-ietf
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.10
4
+ version: 2.0.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: 2019-12-13 00:00:00.000000000 Z
11
+ date: 2020-01-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-standoc
@@ -39,33 +39,33 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: 1.0.0
41
41
  - !ruby/object:Gem::Dependency
42
- name: bundler
42
+ name: mathml2asciimath
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 2.0.1
48
- type: :development
47
+ version: '0'
48
+ type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 2.0.1
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: byebug
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '9.1'
61
+ version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '9.1'
68
+ version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: equivalent-xml
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -224,7 +224,7 @@ description: |
224
224
  metanorma-ietf lets you write IETF documents, such as Internet-Drafts and RFCs,
225
225
  in native AsciiDoc syntax. This is part of the Metanorma publishing framework.
226
226
 
227
- RFC XML ("xml2rfc" Vocabulary XML, RFC7322) is the XML-based language used for
227
+ RFC XML ("xml2rfc" Vocabulary XML, RFC 7991) is the XML-based language used for
228
228
  writing Internet-Drafts and RFCs, but not everyone likes hand-crafting XML,
229
229
  especially when the focus should be on the content.
230
230
 
@@ -249,7 +249,6 @@ files:
249
249
  - ".rubocop.yml"
250
250
  - CODE_OF_CONDUCT.md
251
251
  - Gemfile
252
- - Gemfile.lock
253
252
  - Guardfile
254
253
  - LICENSE
255
254
  - README.adoc
@@ -263,27 +262,28 @@ files:
263
262
  - docs/installation.md
264
263
  - docs/navigation.md
265
264
  - docs/overview.md
266
- - lib/asciidoctor/rfc.rb
267
- - lib/asciidoctor/rfc/common/base.rb
268
- - lib/asciidoctor/rfc/common/front.rb
269
- - lib/asciidoctor/rfc/common/validate.rb
270
- - lib/asciidoctor/rfc/v2/base.rb
271
- - lib/asciidoctor/rfc/v2/blocks.rb
272
- - lib/asciidoctor/rfc/v2/converter.rb
273
- - lib/asciidoctor/rfc/v2/front.rb
274
- - lib/asciidoctor/rfc/v2/inline_anchor.rb
275
- - lib/asciidoctor/rfc/v2/lists.rb
276
- - lib/asciidoctor/rfc/v2/table.rb
277
- - lib/asciidoctor/rfc/v2/validate.rng
278
- - lib/asciidoctor/rfc/v3/base.rb
279
- - lib/asciidoctor/rfc/v3/blocks.rb
280
- - lib/asciidoctor/rfc/v3/converter.rb
281
- - lib/asciidoctor/rfc/v3/front.rb
282
- - lib/asciidoctor/rfc/v3/inline_anchor.rb
283
- - lib/asciidoctor/rfc/v3/lists.rb
284
- - lib/asciidoctor/rfc/v3/svg.rng
285
- - lib/asciidoctor/rfc/v3/table.rb
286
- - lib/asciidoctor/rfc/v3/validate.rng
265
+ - lib/asciidoctor/ietf/basicdoc.rng
266
+ - lib/asciidoctor/ietf/biblio.rng
267
+ - lib/asciidoctor/ietf/blocks.rb
268
+ - lib/asciidoctor/ietf/converter.rb
269
+ - lib/asciidoctor/ietf/front.rb
270
+ - lib/asciidoctor/ietf/ietf.rng
271
+ - lib/asciidoctor/ietf/isodoc.rng
272
+ - lib/asciidoctor/ietf/isostandard.rng
273
+ - lib/asciidoctor/ietf/reqt.rng
274
+ - lib/asciidoctor/ietf/validate.rb
275
+ - lib/isodoc/ietf/blocks.rb
276
+ - lib/isodoc/ietf/cleanup.rb
277
+ - lib/isodoc/ietf/footnotes.rb
278
+ - lib/isodoc/ietf/front.rb
279
+ - lib/isodoc/ietf/inline.rb
280
+ - lib/isodoc/ietf/metadata.rb
281
+ - lib/isodoc/ietf/references.rb
282
+ - lib/isodoc/ietf/reqt.rb
283
+ - lib/isodoc/ietf/rfc_convert.rb
284
+ - lib/isodoc/ietf/section.rb
285
+ - lib/isodoc/ietf/table.rb
286
+ - lib/isodoc/ietf/terms.rb
287
287
  - lib/metanorma-ietf.rb
288
288
  - lib/metanorma/ietf.rb
289
289
  - lib/metanorma/ietf/processor.rb
@@ -312,7 +312,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
312
312
  version: '0'
313
313
  requirements: []
314
314
  rubyforge_project:
315
- rubygems_version: 2.7.6
315
+ rubygems_version: 2.7.7
316
316
  signing_key:
317
317
  specification_version: 4
318
318
  summary: metanorma-ietf lets you write IETF documents, such as Internet-Drafts and