metanorma-plugin-lutaml 0.7.60 → 0.7.62

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: f5ef12f726ddd0652ca444c52965d62604e536653145aee6d8cc52f583f33fe6
4
- data.tar.gz: 20709ad0a41b47e039b1c715d185d23d1d5d85d38d897c4ee9d98a7b9d068b5c
3
+ metadata.gz: 102085caacd4951ba78acd47b10eecec2fd50c6646270bd15c70444d4a54bb3e
4
+ data.tar.gz: 42939df5ca71fe3e838277864054f215d5b3432310792d75384983eb4a35b7cb
5
5
  SHA512:
6
- metadata.gz: 3d0f8b08306c2cf0b67f005159516dcf13e60cdc485ab1e38fd5eda1795efe5675716bbec1d4ab05c201603efb7a14b2f41d655656dd6074dbc8278b42a8c309
7
- data.tar.gz: ed9ba9ec4ef3e7314a4b57e01f1e050841edb58f9657c780cde93daa85c63f7c5dbaf9209d73eb245ec7f6cc4d02dbff49ac2165aa7037f3a1c43151ade0f3aa
6
+ metadata.gz: 550a516ed78801a0a5359a114edac8258bc1c94e0f72384a2d0f338ab38c8476f729de6fb2d4876c21729569badbdfdce17b13e7a6bd0d4164a1a860b319c388
7
+ data.tar.gz: a641b9efc125a5fce7432c43dd1e49fd673abef9f8991e73a3e182f5a44e7a987e40a741164e8be75f9198497d9063e29d44972a1a500f9cc1c90573d7fe9472
@@ -17,19 +17,22 @@ module Metanorma
17
17
  )
18
18
  resolved = document.path_resolver
19
19
  .system_path(file_path, docfile_directory)
20
+ # The decorator expands emitted paths against this base: relative
21
+ # prefixes alone get re-anchored by asciidoctor's imagesdir
22
+ # handling (images/../../schemas collapses a level), so the
23
+ # decoration must produce paths that resolve from the docfile.
24
+ options["relative_path_base"] =
25
+ File.expand_path(docfile_directory)
20
26
  # The prefix lands inside emitted image macros, so it must not
21
27
  # carry the absolute build path: two builds of the same tree in
22
28
  # two directories produced different image/@src values
23
29
  # (metanorma/metanorma-plugin-lutaml#325). A path relative to the
24
30
  # docfile resolves to the same schema file at render time and is
25
- # byte-identical across build directories; the decorator joins it
26
- # as written rather than expanding it.
31
+ # byte-identical across build directories.
27
32
  # The docfile directory may be relative ("."): relative_path_from
28
33
  # refuses mixed prefixes, so both sides expand first
29
34
  Pathname.new(File.expand_path(resolved))
30
- .relative_path_from(
31
- Pathname.new(File.expand_path(docfile_directory)),
32
- )
35
+ .relative_path_from(Pathname.new(File.expand_path(docfile_directory)))
33
36
  .to_s
34
37
  end
35
38
 
@@ -68,15 +68,19 @@ module Metanorma
68
68
  return line if path_prefix && line.include?(path_prefix)
69
69
 
70
70
  line.gsub(RELATIVE_PREFIX_MACRO_REGEXP) do |_match|
71
- # The prefix is already docfile-relative (see
72
- # ExpressRemarkAdapter.relative_path_prefix), so joining it
73
- # keeps the emitted path relative to the docfile too. Expanding
74
- # to an absolute path embedded the build directory in the
75
- # output, making semantic XML, presentation XML and HTML differ
76
- # between two builds of the same tree (#325). Resolution is the
77
- # renderer's job: a relative target joined with imagesdir still
78
- # resolves against the docfile at render time.
79
- "#{$1}#{$2}#{File.join(path_prefix, $3.strip)}#{$4}"
71
+ # Expand against the docfile directory (passed by the adapter
72
+ # as relative_path_base), NOT the process CWD: a CWD expansion
73
+ # produced absolute image paths under whatever directory the
74
+ # build was launched from (e.g. <repo>/../../schemas/...).
75
+ # The absolute result is deliberate: relative targets are
76
+ # re-anchored by asciidoctor's imagesdir handling
77
+ # (images/../../schemas collapses a level), which made every
78
+ # decorated diagram unresolvable at render time.
79
+ full_path = File.expand_path(
80
+ File.join(path_prefix, $3.strip),
81
+ options["relative_path_base"] || Dir.pwd,
82
+ )
83
+ "#{$1}#{$2}#{full_path}#{$4}"
80
84
  end
81
85
  end
82
86
  end
@@ -1,7 +1,7 @@
1
1
  module Metanorma
2
2
  module Plugin
3
3
  module Lutaml
4
- VERSION = "0.7.60".freeze
4
+ VERSION = "0.7.62".freeze
5
5
  end
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-plugin-lutaml
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.60
4
+ version: 0.7.62
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-11-02 00:00:00.000000000 Z
11
+ date: 2026-11-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: asciidoctor