canon 0.3.82 → 0.3.84

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: 6247e852d634ff01d8c91dba814cc1dbc1266ab9a4d2a1acde3951538d9592fc
4
- data.tar.gz: 69d4cd8b46214f5fb221f6ca7d5511207d51f188ffee251e77537cdd916223d8
3
+ metadata.gz: 8eb8f8e66d462a55fad0d7a649c3c928ecd8e4e0d3a774c38bccfb4be7972fd4
4
+ data.tar.gz: 8114e80672e76a7c239c76ad485d7d3bb2c090871ff4e44f59d7d46cf31db569
5
5
  SHA512:
6
- metadata.gz: c515a0e11aa4fb7c71464d43ccb406d3d330807705e40b6cb773b7b138865beb0c96e08dfd48a3093a81f0594a4c7b679e57f2b94cb5109b27447f007131277b
7
- data.tar.gz: c039d97d063e52571c6b9a7eced35afa09eaf9579581de963bd5da65845418d8a225c12506c293e162f520406f78ea53ffccdf1b5901decada3f7800699742da
6
+ metadata.gz: 4939b31f56f07b0c61d7d91a40550eb039e1e2f7d3707c6ae8213ed928386c3533ae64badbd66f8ee09d89f6054a0a2d56149c83fbe4b459deb51db7e5122346
7
+ data.tar.gz: 706e55d06c6998cbe1d9828f286480c9b270f59d0926c0cb4b410b2ac0dde4a135fe28e61575aa6e06c3a8a3aa48bfb74b08a030dc9e9d88a64f775dc3f76ede
@@ -53,14 +53,22 @@ module Canon
53
53
  html_string.include?('xmlns="http://www.w3.org/1999/xhtml"')
54
54
  end
55
55
 
56
+ # XHTML is XML: the shared XML pretty-printer lane owns it (the
57
+ # leptris serializer under the default engine — Nokogiri serving
58
+ # only the forced-fallback engine), keeping the XML loud/tolerant
59
+ # parse contract and the engine's byte-faithful serializer.
60
+ #
61
+ # This replaces a direct Nokogiri::XML call whose serializer
62
+ # INJECTED a <meta http-equiv="Content-Type"> element into <head>
63
+ # of XHTML PUBLIC-doctype documents at serialization time — a
64
+ # pretty-printer must never invent content. Intentional byte
65
+ # changes vs the Nokogiri lane: the phantom meta is gone;
66
+ # body-level PIs/comments indent like every other child; void
67
+ # elements self-close without a space (<br/>).
56
68
  def format_as_xhtml(html_string)
57
- doc = Nokogiri::XML(html_string, &:noblanks)
58
-
59
- out = if @indent_type == "tab"
60
- doc.to_xml(indent: 1, indent_text: "\t", encoding: "UTF-8")
61
- else
62
- doc.to_xml(indent: @indent, encoding: "UTF-8")
63
- end
69
+ out = Canon::PrettyPrinter::Xml.new(
70
+ indent: @indent, indent_type: @indent_type,
71
+ ).format(html_string)
64
72
 
65
73
  expand_non_void_self_closing(out)
66
74
  end
data/lib/canon/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Canon
4
- VERSION = "0.3.82"
4
+ VERSION = "0.3.84"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: canon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.82
4
+ version: 0.3.84
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
@@ -44,28 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.9.336
47
+ version: 1.9.340
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.9.336
54
+ version: 1.9.340
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: moxml
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 0.5.122
61
+ version: 0.5.125
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 0.5.122
68
+ version: 0.5.125
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: paint
71
71
  requirement: !ruby/object:Gem::Requirement