mn-requirements 0.5.12 → 0.5.14.pre.alpha.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 +4 -4
- data/.rubocop.yml +9 -0
- data/Gemfile +7 -0
- data/lib/metanorma/default/cleanup.rb +20 -0
- data/lib/metanorma/requirements/selector.rb +7 -0
- data/lib/metanorma/requirements/version.rb +1 -1
- data/mn-requirements.gemspec +1 -1
- metadata +10 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: cac56f19a103b1f27d059c9efad55266b42140663a1e7e7aea47ab59b90e7822
|
|
4
|
+
data.tar.gz: 787e5e00511ffeb146ea01a40dc9b4fa46f6a841577e5aa6287af572f85943be
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f943f8779ed6c4116769efc81f3c8ba042fc41d71c2d5d60a1dcced3758dc5439e67624905a3fccc18f7188444545be47de5e2844a4c6ef57ee446a16a9f6de9
|
|
7
|
+
data.tar.gz: 49a7f77a67dde0fd4c9a2e8474e2fe2f52e7f7e5d6267a6d145b7d9d7bade9d46de67bf4483eec82ceb0560f0f9f7633fedce579e7d99ad8b726633d2b194666
|
data/.rubocop.yml
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
# See https://github.com/metanorma/cimas
|
|
3
3
|
inherit_from:
|
|
4
4
|
- https://raw.githubusercontent.com/riboseinc/oss-guides/main/ci/rubocop.yml
|
|
5
|
+
# .rubocop_todo.yml MUST be the last entry. inherit_from is last-wins:
|
|
6
|
+
# if listed before oss-guides, the shared config's stricter Metrics/
|
|
7
|
+
# (MethodLength, BlockLength, etc.) rules override the todo's per-file
|
|
8
|
+
# grandfathering, and the todo becomes inert on those cops. Empirically
|
|
9
|
+
# verified on suma 2026-07-06: with todo listed first, 34 Metrics/* offenses
|
|
10
|
+
# remained; moved last, cleared. Every gem in the metanorma-org fleet
|
|
11
|
+
# already ships a `.rubocop_todo.yml` on its live tree (audited 2026-07-06,
|
|
12
|
+
# 54/54 have it), so this reference is safe to emit unconditionally.
|
|
13
|
+
- .rubocop_todo.yml
|
|
5
14
|
|
|
6
15
|
# Rubocop plugins enabled centrally so every metanorma-org gem picks them up
|
|
7
16
|
# on cimas sync — best practice belongs at the shared-template layer, not
|
data/Gemfile
CHANGED
|
@@ -7,3 +7,10 @@ git_source(:github) { |repo| "https://github.com/#{repo}" }
|
|
|
7
7
|
gemspec
|
|
8
8
|
|
|
9
9
|
eval_gemfile("Gemfile.devel") rescue nil
|
|
10
|
+
|
|
11
|
+
gem "isodoc", github: "metanorma/isodoc", branch: "main"
|
|
12
|
+
gem "isodoc-i18n", github: "metanorma/isodoc-i18n", branch: "main"
|
|
13
|
+
# released standoc still caps relaton-cli ~> 2.1.0; isodoc main's
|
|
14
|
+
# relaton-cli floor is the 3.x pre monogem — resolve standoc from main
|
|
15
|
+
gem "metanorma-standoc", github: "metanorma/metanorma-standoc", branch: "main"
|
|
16
|
+
gem "metanorma-document", github: "metanorma/metanorma-document", branch: "main" # standoc main needs SvgmapElement (> 0.2.13)
|
|
@@ -72,6 +72,26 @@ module Metanorma
|
|
|
72
72
|
requirement_metadata1(reqt, dl, reqt.at("./title"))
|
|
73
73
|
end
|
|
74
74
|
|
|
75
|
+
# The provisions model fixes the metadata head order
|
|
76
|
+
# (title?, identifier?, subject*, inherit*, classification*), but the
|
|
77
|
+
# elements are emitted in authored order, so a requirement authoring its
|
|
78
|
+
# subject after its classifications is invalid. Reorder the metadata head
|
|
79
|
+
# into the canonical sequence, preserving relative order within each type.
|
|
80
|
+
# https://github.com/metanorma/metanorma-standoc/issues/1239
|
|
81
|
+
REQT_METADATA_HEAD = %w(title identifier subject inherit
|
|
82
|
+
classification).freeze
|
|
83
|
+
|
|
84
|
+
def requirement_metadata_reorder(reqt)
|
|
85
|
+
ordered = REQT_METADATA_HEAD.flat_map { |n| reqt.xpath("./#{n}").to_a }
|
|
86
|
+
ordered.size < 2 and return
|
|
87
|
+
ordered.reverse_each do |e|
|
|
88
|
+
e.unlink
|
|
89
|
+
if reqt.children.empty? then reqt.add_child(e)
|
|
90
|
+
else reqt.children.first.previous = e
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
|
|
75
95
|
def requirement_metadata1_attrs
|
|
76
96
|
%w(obligation model type class render)
|
|
77
97
|
end
|
|
@@ -79,6 +79,13 @@ module Metanorma
|
|
|
79
79
|
requirement_inherit_cleanup(xmldoc)
|
|
80
80
|
requirement_descriptions_cleanup(xmldoc)
|
|
81
81
|
requirement_identifier_cleanup(xmldoc)
|
|
82
|
+
requirement_metadata_reorder(xmldoc)
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
def requirement_metadata_reorder(xmldoc)
|
|
86
|
+
xmldoc.xpath(REQRECPER).each do |r|
|
|
87
|
+
model(r["model"]).requirement_metadata_reorder(r)
|
|
88
|
+
end
|
|
82
89
|
end
|
|
83
90
|
|
|
84
91
|
def requirement_type_cleanup(xmldoc)
|
data/mn-requirements.gemspec
CHANGED
|
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
|
|
|
29
29
|
spec.add_dependency "isodoc-i18n", ">= 1.2.0"
|
|
30
30
|
spec.add_dependency "metanorma-utils", ">= 2.0.0"
|
|
31
31
|
spec.add_dependency "metanorma-core", ">= 0.1.0"
|
|
32
|
-
spec.add_dependency "relaton-render", "
|
|
32
|
+
spec.add_dependency "relaton-render", "~> 3.0.0.pre.alpha"
|
|
33
33
|
|
|
34
34
|
spec.add_development_dependency "benchmark"
|
|
35
35
|
spec.add_development_dependency "canon"
|
metadata
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: mn-requirements
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.5.
|
|
4
|
+
version: 0.5.14.pre.alpha.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ribose Inc.
|
|
8
|
+
autorequire:
|
|
8
9
|
bindir: exe
|
|
9
10
|
cert_chain: []
|
|
10
|
-
date:
|
|
11
|
+
date: 2026-10-22 00:00:00.000000000 Z
|
|
11
12
|
dependencies:
|
|
12
13
|
- !ruby/object:Gem::Dependency
|
|
13
14
|
name: isodoc-i18n
|
|
@@ -55,16 +56,16 @@ dependencies:
|
|
|
55
56
|
name: relaton-render
|
|
56
57
|
requirement: !ruby/object:Gem::Requirement
|
|
57
58
|
requirements:
|
|
58
|
-
- - "
|
|
59
|
+
- - "~>"
|
|
59
60
|
- !ruby/object:Gem::Version
|
|
60
|
-
version:
|
|
61
|
+
version: 3.0.0.pre.alpha
|
|
61
62
|
type: :runtime
|
|
62
63
|
prerelease: false
|
|
63
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
64
65
|
requirements:
|
|
65
|
-
- - "
|
|
66
|
+
- - "~>"
|
|
66
67
|
- !ruby/object:Gem::Version
|
|
67
|
-
version:
|
|
68
|
+
version: 3.0.0.pre.alpha
|
|
68
69
|
- !ruby/object:Gem::Dependency
|
|
69
70
|
name: benchmark
|
|
70
71
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -305,6 +306,7 @@ homepage: https://github.com/metanorma/mn-requirements
|
|
|
305
306
|
licenses:
|
|
306
307
|
- BSD-2-Clause
|
|
307
308
|
metadata: {}
|
|
309
|
+
post_install_message:
|
|
308
310
|
rdoc_options: []
|
|
309
311
|
require_paths:
|
|
310
312
|
- lib
|
|
@@ -319,7 +321,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
319
321
|
- !ruby/object:Gem::Version
|
|
320
322
|
version: '0'
|
|
321
323
|
requirements: []
|
|
322
|
-
rubygems_version:
|
|
324
|
+
rubygems_version: 3.5.22
|
|
325
|
+
signing_key:
|
|
323
326
|
specification_version: 4
|
|
324
327
|
summary: Requirements processing and rendering according to different models
|
|
325
328
|
test_files: []
|