asciidoctor-pdf 2.3.14 → 2.3.16

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 39b6ad360fe1b653c7f0498edad3e45c8f76549e035f9dcdab76f088df362cbd
4
- data.tar.gz: 81a541dc83a1aa325c3586fae64947e68128387634810512be01898b2096f684
3
+ metadata.gz: ef03e65243bd010af78e16303283d08498c81752a6509c02022250179383b2cb
4
+ data.tar.gz: 200b495ef4176f018a4869b6663ec767e906ad1559b2788e5e9da09d0f8e7b89
5
5
  SHA512:
6
- metadata.gz: e6fd8480e6c642612fe12656aef7208afee65fa6a126b56aa366d11dc11078271fc1744cb92d3849131f3c0948d5ccff6c4a1041a779b4244ebc9fbd768d26b8
7
- data.tar.gz: 17378df2c24a571bb63334b4b2fe030f00ad9010dcbfeadef0fd4b626551984897841af0916228eac5bd11ff44f134ea9e6abf46cdf6a4a9a570995eca11bdeb
6
+ metadata.gz: acee2946bb7c7cb633446820ddc3462874fe8b1ac52d38cb938cdd949155a28b18f95e480c507fe99ff14f14737394a8286238c92fd7f7dbf0d42f5d5f751f19
7
+ data.tar.gz: f5f73ab782a0bd6f69653b22eed054b0442e1f42c11ce1c2e0f0921290639b545abc4beb7179e00333e6a298c9bb69e91cc87c97342b92beb8ae39d714d71523
data/CHANGELOG.adoc CHANGED
@@ -5,6 +5,39 @@
5
5
  This document provides a high-level view of the changes to the {project-name} by release.
6
6
  For a detailed view of what has changed, refer to the {url-repo}/commits/main[commit history] on GitHub.
7
7
 
8
+ == 2.3.16 (2024-05-31) - @mojavelinux
9
+
10
+ Improvements::
11
+
12
+ * don't hyphenate autolink when hyphenation is enabled (#2521) (*@meonkeys*)
13
+ * add support for base64-encoded SVG image reference in SVG (#2512)
14
+
15
+ Bug Fixes::
16
+
17
+ * duplicate attributes on table when wrapping table in breakable or unbreakable container (#2520)
18
+
19
+ Compliance::
20
+
21
+ * lock version of rexml (pulled in by asciidoctor-diagram and prawn-svg) to fix incompatibility
22
+
23
+ === Details
24
+
25
+ {url-repo}/releases/tag/v2.3.16[git tag] | {url-repo}/compare/v2.3.15\...v2.3.16[full diff]
26
+
27
+ == 2.3.15 (2024-03-12) - @mojavelinux
28
+
29
+ Improvements::
30
+
31
+ * drop links from entries in TOC (#2505)
32
+
33
+ Compliance::
34
+
35
+ * lock ttfunk to 1.7.x to avoid requiring Ruby headers (i.e., development libraries) to install gem (#2508)
36
+
37
+ === Details
38
+
39
+ {url-repo}/releases/tag/v2.3.15[git tag] | {url-repo}/compare/v2.3.14\...v2.3.15[full diff]
40
+
8
41
  == 2.3.14 (2024-03-08) - @mojavelinux
9
42
 
10
43
  Improvements::
data/README.adoc CHANGED
@@ -1,6 +1,6 @@
1
1
  = Asciidoctor PDF: A native PDF converter for AsciiDoc
2
2
  Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>
3
- v2.3.14, 2024-03-08
3
+ v2.3.16, 2024-05-31
4
4
  // Settings:
5
5
  :experimental:
6
6
  :idprefix:
@@ -35,12 +35,14 @@ Gem::Specification.new do |s|
35
35
 
36
36
  s.add_runtime_dependency 'asciidoctor', '~> 2.0'
37
37
  s.add_runtime_dependency 'prawn', '~> 2.4.0'
38
+ s.add_runtime_dependency 'ttfunk', '~> 1.7.0' # pin ttfunk for compatiblity; prawn gem only pins it to major version
38
39
  s.add_runtime_dependency 'matrix', '~> 0.4' # required until prawn >= 2.5.0 is released
39
40
  s.add_runtime_dependency 'prawn-table', '~> 0.2.0'
40
41
  s.add_runtime_dependency 'prawn-templates', '~> 0.1.0'
41
42
  s.add_runtime_dependency 'prawn-svg', '~> 0.34.0'
42
43
  s.add_runtime_dependency 'prawn-icon', '~> 3.0.0'
43
44
  s.add_runtime_dependency 'concurrent-ruby', '~> 1.1'
45
+ s.add_runtime_dependency 'rexml', '3.2.6' # lock rexml to 3.2.6 since 3.2.7 and up breaks Ruby
44
46
  s.add_runtime_dependency 'treetop', '~> 1.6.0'
45
47
 
46
48
  s.add_development_dependency 'rake', '~> 13.0.0'
@@ -1989,6 +1989,8 @@ module Asciidoctor
1989
1989
  if !at_page_top? && ((unbreakable = node.option? 'unbreakable') || ((node.option? 'breakable') && (node.id || node.title?)))
1990
1990
  # NOTE: we use the current node as the parent so we can navigate back into the document model
1991
1991
  (table_container = Block.new node, :open) << (table_dup = node.dup)
1992
+ # NOTE: we need to duplicate the attributes so that the unbreakable/breakable option is preserved on subsequent conversions
1993
+ table_dup.instance_variable_set :@attributes, node.attributes.dup
1992
1994
  if unbreakable
1993
1995
  table_dup.remove_attr 'unbreakable-option'
1994
1996
  table_container.set_attr 'unbreakable-option'
@@ -3917,6 +3919,7 @@ module Asciidoctor
3917
3919
  theme_font :toc, level: entry_level do
3918
3920
  entry_title = entry.context == :section ? entry.numbered_title : (entry.title? ? entry.title : (entry.xreftext 'basic'))
3919
3921
  next if entry_title.empty?
3922
+ entry_title = entry_title.gsub DropAnchorRx, '' if entry_title.include? '<a'
3920
3923
  entry_title = transform_text entry_title, @text_transform if @text_transform
3921
3924
  pgnum_label_placeholder_width = rendered_width_of_string '0' * @toc_max_pagenum_digits
3922
3925
  # NOTE: only write title (excluding dots and page number) if this is a dry run
@@ -2,5 +2,5 @@
2
2
 
3
3
  class Prawn::SVG::Loaders::Data
4
4
  remove_const :REGEXP
5
- REGEXP = %r(\Adata:image/(?:png|jpe?g);base64(?:;[a-z0-9]+)*,)i
5
+ REGEXP = %r(\Adata:image/(?:png|jpe?g|svg\+xml);base64(?:;[a-z0-9]+)*,)i
6
6
  end
@@ -8,6 +8,7 @@ module Asciidoctor
8
8
  TagFilterRx = /(<[^>]+>)|([^<]+)/
9
9
  ContiguousCharsRx = /\p{Graph}+/
10
10
  WordRx = /\p{Word}+/
11
+ BareClassRx = / class="bare[" ]/
11
12
  Hyphen = '-'
12
13
  SoftHyphen = ?\u00ad
13
14
  LowerAlphaChars = 'a-z'
@@ -31,7 +32,15 @@ module Asciidoctor
31
32
 
32
33
  def hyphenate_words_pcdata string, hyphenator
33
34
  if XMLMarkupRx.match? string
34
- string.gsub(PCDATAFilterRx) { $2 ? (hyphenate_words $2, hyphenator) : $1 }
35
+ skipping = false
36
+ string.gsub PCDATAFilterRx do
37
+ if $2
38
+ skipping ? $2 : (hyphenate_words $2, hyphenator)
39
+ else
40
+ skipping = skipping ? $1 != '</a>' : ($1.start_with? '<a ') && (BareClassRx.match? $1)
41
+ $1
42
+ end
43
+ end
35
44
  else
36
45
  hyphenate_words string, hyphenator
37
46
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Asciidoctor
4
4
  module PDF
5
- VERSION = '2.3.14'
5
+ VERSION = '2.3.16'
6
6
  end
7
7
  end
@@ -1,5 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ proc do
4
+ old_verbose, $VERBOSE = $VERBOSE, nil
5
+ require 'bigdecimal' # eagerly require bigdecimal without warnings to avoid warning caused by ttfunk 1.7.0
6
+ $VERBOSE = old_verbose
7
+ end.call
8
+
3
9
  autoload :Set, 'set'
4
10
  autoload :StringIO, 'stringio'
5
11
  autoload :Tempfile, 'tempfile'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: asciidoctor-pdf
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.14
4
+ version: 2.3.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Allen
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-03-08 00:00:00.000000000 Z
12
+ date: 2024-05-31 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: asciidoctor
@@ -39,6 +39,20 @@ dependencies:
39
39
  - - "~>"
40
40
  - !ruby/object:Gem::Version
41
41
  version: 2.4.0
42
+ - !ruby/object:Gem::Dependency
43
+ name: ttfunk
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - "~>"
47
+ - !ruby/object:Gem::Version
48
+ version: 1.7.0
49
+ type: :runtime
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - "~>"
54
+ - !ruby/object:Gem::Version
55
+ version: 1.7.0
42
56
  - !ruby/object:Gem::Dependency
43
57
  name: matrix
44
58
  requirement: !ruby/object:Gem::Requirement
@@ -123,6 +137,20 @@ dependencies:
123
137
  - - "~>"
124
138
  - !ruby/object:Gem::Version
125
139
  version: '1.1'
140
+ - !ruby/object:Gem::Dependency
141
+ name: rexml
142
+ requirement: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - '='
145
+ - !ruby/object:Gem::Version
146
+ version: 3.2.6
147
+ type: :runtime
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - '='
152
+ - !ruby/object:Gem::Version
153
+ version: 3.2.6
126
154
  - !ruby/object:Gem::Dependency
127
155
  name: treetop
128
156
  requirement: !ruby/object:Gem::Requirement
@@ -336,7 +364,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
336
364
  - !ruby/object:Gem::Version
337
365
  version: '0'
338
366
  requirements: []
339
- rubygems_version: 3.5.3
367
+ rubygems_version: 3.5.9
340
368
  signing_key:
341
369
  specification_version: 4
342
370
  summary: Converts AsciiDoc documents to PDF using Asciidoctor and Prawn