metanorma-generic 3.3.4 → 3.4.0

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: ed01524e23a3a084bd1aa2aeb545c721d5d083548699e09b3529e1c40dcb6432
4
- data.tar.gz: af9f237dde23eee11c874cf136946dc359375fe06671f750750e2de8c99a1623
3
+ metadata.gz: 6000d91122bed81dc0d79c81fc4b3bbb3a84e6f164aedcdfff5c997aabf14b2c
4
+ data.tar.gz: 1667842e29d745ac3ca391e7d0b41422d688d6b2195707bdbc9ab200bc3fe43e
5
5
  SHA512:
6
- metadata.gz: 409b1d2362e0cc6cc6b85e2054d11a8c420e4b19fd0c2cd17a42dad01d065dcb4a7613eac9aa1d44684e49aa8f2bdebea42eaa300404518bbf8aeb01c106d316
7
- data.tar.gz: e639dcacf43f6ed51102ff81475c59b8e5f3f477cc4c91bc5600f88404f21974979ce8650aec181dfc2fb41620137e8cf66ed342474ab530db13c35cc6ac90f5
6
+ metadata.gz: 2294d7023864c81c3847f1ecffe99133caf10152676912926c1d2a48efe39f21d3160f02d2ff116fe4bf75323db6a783cd6a20f160eacee4137addc132b56281
7
+ data.tar.gz: 6094641c6e7628b00a66b36ccf16c51ed09fd4875e2a10d46778515f538dc1915edfd4d9140e3124ddd2e7504c3817b6179f00f68389571609286078f878da66
data/.rubocop.yml CHANGED
@@ -1,10 +1,10 @@
1
1
  # Auto-generated by Cimas: Do not edit it manually!
2
2
  # See https://github.com/metanorma/cimas
3
3
  inherit_from:
4
- - https://raw.githubusercontent.com/riboseinc/oss-guides/master/ci/rubocop.yml
4
+ - https://raw.githubusercontent.com/riboseinc/oss-guides/main/ci/rubocop.yml
5
5
 
6
6
  # local repo-specific modifications
7
7
  # ...
8
8
 
9
9
  AllCops:
10
- TargetRubyVersion: 2.5
10
+ TargetRubyVersion: 3.4
@@ -17,7 +17,7 @@ module Metanorma
17
17
 
18
18
  def bibdata_from_xml(model, node)
19
19
  node or return
20
- model.bibdata = Relaton::Cli.parse_xml(node.adapter_node)
20
+ model.bibdata = Relaton::Cli.parse_xml(node.adapter_node.native)
21
21
  end
22
22
 
23
23
  def bibdata_to_xml(model, parent, doc); end
@@ -24,6 +24,21 @@ module Metanorma
24
24
  b = xmldoc.at("//bibdata") || xmldoc.at("//xmlns:bibdata") or return nil
25
25
  stripped = Nokogiri::XML(b.to_xml)
26
26
  stripped.remove_namespaces!
27
+ # Drop @boilerplate="true" docidentifiers before handing the
28
+ # bibdata to Relaton::Cli.parse_xml: their content is an
29
+ # unresolved Liquid template, and recent relaton-iho /
30
+ # relaton-cc / etc. eagerly call pubid in their docidentifier
31
+ # content= setter, which crashes on raw Liquid syntax. The
32
+ # template variables for substitution come from other bibdata
33
+ # fields (seriesabbr, docnumeric, …), not from the
34
+ # docidentifier itself, so dropping it here does not affect
35
+ # what we feed back into isodoc.meta. Substitution still runs
36
+ # on the original xmldoc via standoc's
37
+ # docidentifier_boilerplate_isodoc; afterwards
38
+ # refresh_isodoc_bibdata re-calls bibdata_hash to seed
39
+ # isodoc.meta with the resolved docidentifier.
40
+ # See https://github.com/metanorma/metanorma/issues/558.
41
+ stripped.xpath("//docidentifier[@boilerplate = 'true']").each(&:remove)
27
42
  bib = BibdataConfig.from_xml(
28
43
  "<metanorma>#{stripped.root.to_xml}</metanorma>",
29
44
  ).bibdata or return nil
@@ -31,6 +46,16 @@ module Metanorma
31
46
  symbolize_names: true)
32
47
  end
33
48
 
49
+ # Override standoc's hook: in addition to re-running
50
+ # isodoc_bibdata_parse, refresh conv.meta[:bibdata] with the
51
+ # bibdata_hash now that docidentifiers have been substituted, so
52
+ # downstream consumers (boilerplate Liquid expansion, coverpage
53
+ # interpolation, etc.) see the resolved values.
54
+ def refresh_isodoc_bibdata(xmldoc, conv)
55
+ super
56
+ conv.meta.set(:bibdata, bibdata_hash(xmldoc))
57
+ end
58
+
34
59
  def boilerplate_file(xmldoc)
35
60
  f = configuration.boilerplate
36
61
  f.nil? and return super
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Generic
3
- VERSION = "3.3.4".freeze
3
+ VERSION = "3.4.0".freeze
4
4
  end
5
5
  end
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.require_paths = ["lib"]
28
28
  spec.required_ruby_version = Gem::Requirement.new(">= 3.1.0")
29
29
 
30
- spec.add_dependency "metanorma-standoc", "~> 3.4.0"
30
+ spec.add_dependency "metanorma-standoc", "~> 3.4.2"
31
31
 
32
32
  spec.add_development_dependency "debug"
33
33
  spec.add_development_dependency "equivalent-xml", "~> 0.6"
@@ -40,6 +40,6 @@ Gem::Specification.new do |spec|
40
40
  spec.add_development_dependency "sassc-embedded", "~> 1"
41
41
  spec.add_development_dependency "simplecov", "~> 0.15"
42
42
  spec.add_development_dependency "timecop", "~> 0.9"
43
- spec.add_development_dependency "canon"
43
+ spec.add_development_dependency "canon"#, "= 0.2.3"
44
44
  spec.add_development_dependency "metanorma"
45
45
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-generic
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.4
4
+ version: 3.4.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: 2026-04-27 00:00:00.000000000 Z
11
+ date: 2026-05-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-standoc
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 3.4.0
19
+ version: 3.4.2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 3.4.0
26
+ version: 3.4.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: debug
29
29
  requirement: !ruby/object:Gem::Requirement