metanorma-ietf 3.6.5 → 3.6.6
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 +4 -4
- data/lib/isodoc/ietf/i18n-en.yaml +2 -0
- data/lib/metanorma/ietf/cleanup.rb +2 -4
- data/lib/metanorma/ietf/converter.rb +2 -0
- data/lib/metanorma/ietf/log.rb +26 -0
- data/lib/metanorma/ietf/validate.rb +3 -7
- data/lib/metanorma/ietf/version.rb +1 -1
- data/lib/relaton/render/config.yml +1 -1
- data/lib/relaton/render/fields.rb +2 -2
- data/metanorma-ietf.gemspec +2 -1
- metadata +19 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: edd5d53757c7142ccf379c7ffb83ecc79874c544593de69a9b1421a00e90cc3f
|
|
4
|
+
data.tar.gz: ce343131a888ca5c1b617abfea081e2bee46c2f6c2162bd99331e0ce05add13e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3440d8db12dda0936d60ded38bbe47c72fb76ffbbc5aac8ee914b0bb03f3808f93078bba4aeb69edf4133d7b4d6e2561419b9b1e8eaedeb2ce803f0817db1c73
|
|
7
|
+
data.tar.gz: 74564e708027fd31b303cf215d6a5a98c25e4e8ed40bf58e207805d9a7a49ac6a882f483fbae3db4fdc92c973c5db22deb133b3ecfb0380d471b9d32954d1485
|
|
@@ -13,7 +13,7 @@ module Metanorma
|
|
|
13
13
|
def boilerplate_isodoc(xmldoc)
|
|
14
14
|
x = xmldoc.dup
|
|
15
15
|
x.root.add_namespace(nil, xml_namespace)
|
|
16
|
-
#xml = Nokogiri::XML(x.to_xml)
|
|
16
|
+
# xml = Nokogiri::XML(x.to_xml)
|
|
17
17
|
@isodoc ||= isodoc(@lang, @script, @locale)
|
|
18
18
|
# initialise @isodoc.xrefs, for @isodoc.xrefs.info
|
|
19
19
|
@isodoc
|
|
@@ -41,8 +41,7 @@ module Metanorma
|
|
|
41
41
|
c["to"] = id
|
|
42
42
|
r.replace("<bookmark id='#{id}'/>")
|
|
43
43
|
else
|
|
44
|
-
@log.add("
|
|
45
|
-
"No matching annotation for cref:[#{r.text}]", severity: 1)
|
|
44
|
+
@log.add("IETF_1", r, params: [r.text])
|
|
46
45
|
end
|
|
47
46
|
end
|
|
48
47
|
end
|
|
@@ -103,7 +102,6 @@ module Metanorma
|
|
|
103
102
|
def section_names_refs_cleanup(xml); end
|
|
104
103
|
|
|
105
104
|
def note_cleanup(xmldoc); end
|
|
106
|
-
|
|
107
105
|
end
|
|
108
106
|
end
|
|
109
107
|
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
module Metanorma
|
|
2
|
+
module Ietf
|
|
3
|
+
class Converter
|
|
4
|
+
IETF_LOG_MESSAGES = {
|
|
5
|
+
# rubocop:disable Naming/VariableNumber
|
|
6
|
+
"IETF_1": { category: "Crossrefences",
|
|
7
|
+
error: "No matching annotation for cref:[%s]",
|
|
8
|
+
severity: 1 },
|
|
9
|
+
"IETF_2": { category: "Document Attributes",
|
|
10
|
+
error: "Editorial stream must have Informational status",
|
|
11
|
+
severity: 2 },
|
|
12
|
+
"IETF_3": { category: "Images",
|
|
13
|
+
error: "image %s is not SVG!",
|
|
14
|
+
severity: 1 },
|
|
15
|
+
"IETF_4": { category: "Document Attributes",
|
|
16
|
+
error: "IETF: unrecognised working group %s",
|
|
17
|
+
severity: 1 },
|
|
18
|
+
}.freeze
|
|
19
|
+
# rubocop:enable Naming/VariableNumber
|
|
20
|
+
|
|
21
|
+
def log_messages
|
|
22
|
+
super.merge(IETF_LOG_MESSAGES)
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -19,15 +19,13 @@ module Metanorma
|
|
|
19
19
|
stream = doc.at("//bibdata/series[@type = 'stream']/title")&.text
|
|
20
20
|
status = doc.at("//bibdata/status/stage")&.text
|
|
21
21
|
stream == "editorial" && status != "informational" and
|
|
22
|
-
@log.add("
|
|
23
|
-
"Editorial stream must have Informational status")
|
|
22
|
+
@log.add("IETF_2", nil)
|
|
24
23
|
end
|
|
25
24
|
|
|
26
25
|
def image_validate(doc)
|
|
27
26
|
doc.xpath("//image").each do |i|
|
|
28
27
|
i["mimetype"] == "image/svg+xml" and next
|
|
29
|
-
@log.add("
|
|
30
|
-
severity: 1)
|
|
28
|
+
@log.add("IETF_3", i, params: [i["src"][0, 40]])
|
|
31
29
|
end
|
|
32
30
|
end
|
|
33
31
|
|
|
@@ -37,9 +35,7 @@ module Metanorma
|
|
|
37
35
|
"organization/subdivision[@type = 'Workgroup']/name").each do |wg|
|
|
38
36
|
wg_norm = wg.text.sub(/ (Working|Research) Group$/, "")
|
|
39
37
|
@workgroups.include?(wg_norm) and next
|
|
40
|
-
@log.add("
|
|
41
|
-
"IETF: unrecognised working group #{wg.text}",
|
|
42
|
-
severity: 1)
|
|
38
|
+
@log.add("IETF_4", nil, params: [wg.text])
|
|
43
39
|
end
|
|
44
40
|
end
|
|
45
41
|
|
|
@@ -20,7 +20,7 @@ template:
|
|
|
20
20
|
# skip standardidentifier, it is inserted in front of formattedref within metanorma
|
|
21
21
|
# date is cleaned up into RFC XML formatting afterwards
|
|
22
22
|
# ref-included is cleaned up as referencegroup/reference in RFC XML afterwards
|
|
23
|
-
standard: "{% if stream %}<stream>{{stream}}</stream>{% endif %} <front> <title>{{ title }}</title> {{ creatornames }} <date_cleanme='true'>{{date}}</date> {% for k in keywords %}<keyword>{{k}}</keyword>{%endfor%} <abstract_cleanme='true'>{{abstract}}</abstract> </front> {
|
|
23
|
+
standard: "{% if stream %}<stream>{{stream}}</stream>{% endif %} <front> <title>{{ title }}</title> {{ creatornames }} <date_cleanme='true'>{{date}}</date> {% for k in keywords %}<keyword>{{k}}</keyword>{%endfor%} <abstract_cleanme='true'>{{abstract}}</abstract> </front> {%for d in doi %}<seriesInfo_value='{{ d | replace: ' ', ' ' | remove_first: 'DOI' | replace: '<esc> ': '<esc>' | replace: ' </esc>' : '</esc>' }}'_name='DOI'/>{% endfor %} {% if home_standard %}{% for j in authoritative_identifier %} <seriesInfo_value='{{ j | replace: ' ', ' ' | replace: '<esc> ': '<esc>' | replace: ' </esc>' : '</esc>' | split: ' ' | last | remove_first: 'I-D.'}}'_name='{%if j contains 'I-D.'%}Internet-Draft{% else %}{{ j | replace: ' ', ' ' | replace: '<esc> ': '<esc>' | replace: ' </esc>' : '</esc>' | split: ' ' | slice: -2 }}{%endif%}'/> {% endfor %} {% else %} <refcontent>{{authoritative_identifier | join: ', '}}</refcontent> {% endif %} {% for i in included %}<ref-included target='{{ i.uris[0].content }}'> {% if i.stream %}<stream>{{i.stream}}</stream>{% endif %} <front> <title>{% if i.title %}{{ i.title}}{%else%}[TITLE]{%endif%}</title> {% if i.creatornames %}{{ i.creatornames }}{%else%}<author></author>{%endif%} <date_cleanme='true'>{{i.date}}</date> {% for k in i.keywords %}<keyword>{{k}}</keyword>{%endfor%} <abstract_cleanme='true'>{{i.abstract}}</abstract> </front> {{ series }} {%for d in i.doi %}<seriesInfo_value='{{ d | replace: ' ', ' ' | remove_first: 'DOI' | replace: '<esc> ': '<esc>' | replace: ' </esc>' : '</esc>' }}'_name='DOI'/>{% endfor %} {% if home_standard %}{% for j in i.authoritative_identifier %} <seriesInfo_value='{{ j | replace: ' ', ' ' | replace: '<esc> ': '<esc>' | replace: ' </esc>' : '</esc>' | split: ' ' | last | remove_first: 'I-D.'}}'_name='{%if j contains 'I-D.'%}Internet-Draft{% else %}{{ j | replace: ' ', ' ' | replace: '<esc> ': '<esc>' | replace: ' </esc>' : '</esc>' | split: ' ' | slice: -2 }}{%endif%}'/> {% endfor %} {% else %} <refcontent>{{i.authoritative_identifier | join: ', '}}</refcontent> {% endif %}</ref-included>{% endfor %}"
|
|
24
24
|
website: standard
|
|
25
25
|
book: standard
|
|
26
26
|
booklet: standard
|
|
@@ -2,7 +2,7 @@ module Relaton
|
|
|
2
2
|
module Render
|
|
3
3
|
module Ietf
|
|
4
4
|
class Fields < ::Relaton::Render::Fields
|
|
5
|
-
def nameformat(names)
|
|
5
|
+
def nameformat(names, hash)
|
|
6
6
|
names.nil? and return names
|
|
7
7
|
parts = %i(surname initials given middle nonpersonal
|
|
8
8
|
nonpersonalabbrev completename)
|
|
@@ -12,7 +12,7 @@ module Relaton
|
|
|
12
12
|
m[i] << n[i]
|
|
13
13
|
end
|
|
14
14
|
end
|
|
15
|
-
@r.nametemplate.render(names_out)
|
|
15
|
+
@r.nametemplate.render(names_out, hash)
|
|
16
16
|
end
|
|
17
17
|
|
|
18
18
|
# do not format months
|
data/metanorma-ietf.gemspec
CHANGED
|
@@ -37,13 +37,14 @@ Gem::Specification.new do |spec|
|
|
|
37
37
|
spec.required_ruby_version = Gem::Requirement.new(">= 3.1.0")
|
|
38
38
|
|
|
39
39
|
spec.add_dependency "metanorma-ietf-data"
|
|
40
|
-
spec.add_dependency "metanorma-standoc", "~> 3.
|
|
40
|
+
spec.add_dependency "metanorma-standoc", "~> 3.2.0"
|
|
41
41
|
spec.add_dependency "relaton-render"
|
|
42
42
|
|
|
43
43
|
spec.add_development_dependency "debug"
|
|
44
44
|
spec.add_development_dependency "equivalent-xml", "~> 0.6"
|
|
45
45
|
spec.add_development_dependency "guard", "~> 2.14"
|
|
46
46
|
spec.add_development_dependency "guard-rspec", "~> 4.7"
|
|
47
|
+
spec.add_development_dependency "openssl"
|
|
47
48
|
spec.add_development_dependency "rake", "~> 13.0"
|
|
48
49
|
spec.add_development_dependency "rspec", "~> 3.6"
|
|
49
50
|
spec.add_development_dependency "rubocop", "~> 1"
|
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: 3.6.
|
|
4
|
+
version: 3.6.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ribose Inc.
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2025-
|
|
11
|
+
date: 2025-11-03 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: metanorma-ietf-data
|
|
@@ -30,14 +30,14 @@ dependencies:
|
|
|
30
30
|
requirements:
|
|
31
31
|
- - "~>"
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: 3.
|
|
33
|
+
version: 3.2.0
|
|
34
34
|
type: :runtime
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
38
|
- - "~>"
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: 3.
|
|
40
|
+
version: 3.2.0
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: relaton-render
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -108,6 +108,20 @@ dependencies:
|
|
|
108
108
|
- - "~>"
|
|
109
109
|
- !ruby/object:Gem::Version
|
|
110
110
|
version: '4.7'
|
|
111
|
+
- !ruby/object:Gem::Dependency
|
|
112
|
+
name: openssl
|
|
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'
|
|
111
125
|
- !ruby/object:Gem::Dependency
|
|
112
126
|
name: rake
|
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -280,6 +294,7 @@ files:
|
|
|
280
294
|
- lib/metanorma/ietf/front.rb
|
|
281
295
|
- lib/metanorma/ietf/ietf.rng
|
|
282
296
|
- lib/metanorma/ietf/isodoc.rng
|
|
297
|
+
- lib/metanorma/ietf/log.rb
|
|
283
298
|
- lib/metanorma/ietf/macros.rb
|
|
284
299
|
- lib/metanorma/ietf/processor.rb
|
|
285
300
|
- lib/metanorma/ietf/relaton-ietf.rng
|